1

文字列は次のとおりです。"foo('argument1','argument2')"

を使用せずにこの関数を JavaScript として実行するにはどうすればよいevalですか? 私はあなたが使用できることを知っています

window[func](arguments)

ただし、引数は文字列の一部です。正規表現を使用してみましたが、javascript には後読み機能がないため、その方法がわかりません。助言がありますか?

4

2 に答える 2

0

それにはいくつかの方法がありますが、そのうちの 1 つはすでにジストロイによって与えられています。

もう少し簡単な方法は次のとおりです。

var args = "foo('argument1','argument2')".split(/[()',]+/).slice(0,-1)
Function.prototype.call.apply(window[args[0]],args)
于 2013-07-05T19:33:49.820 に答える