2015年3月18日のブックマーク (1件)

  • 文字列で関数を実行する

    JavaScriptで関数名を文字列で与えるとその関数が実行されるような方法を考えます。 次のような例で考えます。 「orange」ならば「ミカン」と表示する関数を実行。 「apple」ならば「リンゴ」と表示する関数を実行。 ifで振り分ける オーソドックスにifで処理を振り分ける方法です。 一つずつif節を書くので、関数が増えると長くなってしまいます。 var word="apple"; function orange(){ alert("ミカン"); } function apple(){ alert("リンゴ"); } if(word=="orange"){ orange(); }else if(word=="apple"){ apple(); } evalを使う evalを使うと文字列があたかもコードを書いたかのように振る舞います。 これならば「eval(関数名+”()”)」とする

    文字列で関数を実行する