関数名を文字列で指定して実行する

Posted by muchag | JavaScript | 2015-12-30 (水) 15:13:45

PHP では、$$hoge という書き方があって便利なんだけど
Javascript ではどうやるのかな~って探してみた。

下記サンプルコードは、参考サイトより引用させていただきました。

eval

メソッド名を文字列で組み立てて
eval してやることで、関数として「評価」してくれる
ということらしい。率直だ!

  1. var word="apple";
  2. function orange(){
  3.     alert("ミカン");
  4. }
  5. function apple(){
  6.     alert("リンゴ");
  7. }
  8. eval(word+"()");
関数連想配列

私はこちらの方がピンときたので、こちらを採用させていただいた。

  1. var myfunction = [];
  2. myfunction["tashi"] = function (a, b) {
  3.     return a + b;
  4. }
  5. myfunction["hiki"] = function (a, b) {
  6.     return a - b;
  7. }
  8. alert(myfunction["tashi"](2, 5));
参考サイト

You Look Too Cool
evalを使わずに関数を文字列で指定して実行する方法
文字列で関数を実行する

JavaScript | 2015-12-30 (水) 15:13:45 |

コメントはまだありません »

No comments yet.

RSS feed for comments on this post. TrackBack URI

Leave a comment