JavaScript では、次のような文字列があります。
"doSomething('param1','param2')"
そして実行したい。普通に使えるのはわかった
window['doSomething']('param1', 'param2');
しかし、それは関数名が引数とは別の場合にのみ機能します。私の場合、それらはすでに結合されています。私は eval() を使用できると思いますが、コンセンサスは避けるべきだということです。別の方法はありますか?
編集: 詳細情報のリクエストに答えるには:私はこの文字列を次のように使用しています:
<a id="YesButton" onclick="closeModalView_Yes("doSomething('param1','param2')")">
closeModalView_Yes は、モーダルの yes/no ウィンドウを閉じてから、指定された関数を実行しますが、パラメータを 1 つだけ取る doSomethingElse(param1) を渡す場合もあります。