ホームページ >ウェブフロントエンド >jsチュートリアル >文字列として保存された名前を使用して JavaScript 関数を呼び出すにはどうすればよいですか?

文字列として保存された名前を使用して JavaScript 関数を呼び出すにはどうすればよいですか?

Mary-Kate Olsen
Mary-Kate Olsenオリジナル
2024-12-26 04:03:09469ブラウズ

How Can I Call a JavaScript Function Using Its Name Stored as a String?

文字列に格納された名前による JavaScript 関数の呼び出し

特定のシナリオでは、次のような関数名を所有する状況に遭遇することがあります。文字列なのでそれを実行する必要があります。これを実現するには、次の手順に従います。

方法 1: フラット関数の場合

名前空間の一部ではない関数の場合は、次の構文を使用します。

window["functionName"](arguments);

方法 2: 名前空間の場合関数

ネームスペース内の関数の場合、次の構文が必要です。

var namespaces = functionName.split(".");
var func = namespaces.pop();
for (var i = 0; i < namespaces.length; i++) {
  context = context[namespaces[i]];
}
context[func].apply(context, args);

方法 3: コンビニエンス関数を使用する

To手続きを簡略化することで、以下のような利便性をご利用いただけます。 function:

function executeFunctionByName(functionName, context /*, args */) {
  var args = Array.prototype.slice.call(arguments, 2);
  var namespaces = functionName.split(".");
  var func = namespaces.pop();
  for(var i = 0; i < namespaces.length; i++) {
    context = context[namespaces[i]];
  }
  return context[func].apply(context, args);
}

関数の呼び出し

いずれかのメソッドを使用して関数を呼び出すには、以下に示すように関数名とコンテキストを指定します。

executeFunctionByName("My.Namespace.functionName", window, arguments);

以上が文字列として保存された名前を使用して JavaScript 関数を呼び出すにはどうすればよいですか?の詳細内容です。詳細については、PHP 中国語 Web サイトの他の関連記事を参照してください。

声明:
この記事の内容はネチズンが自主的に寄稿したものであり、著作権は原著者に帰属します。このサイトは、それに相当する法的責任を負いません。盗作または侵害の疑いのあるコンテンツを見つけた場合は、admin@php.cn までご連絡ください。