Javascriptの中で、次のような関数を作成して呼び出すことができます。コール動的スコープ機能
function test_1(){ console.log(1); }
window['test_1']() // --> 1
しかし、私の現在のコードがスコープさ:
(function(){
function test_1(){ console.log(1); }
window['test_1']() // --> not a function
})();
...作る任意の作成機能をウィンドウレベルにバインドされず、特定のスコープレベルにバインドされます。
スコープ内で関数を作成し、その関数を動的に呼び出す方法はありますか?
は*動的で私が動的に可変の文字列などウィンドウ[「テスト_」+インデックス()を変化させることができることを意味します。
'window.test_1 = function(){}' – Rayon
あなたの問題は、グローバルvsローカルスコープのためです。 – epascarello
2番目のコードスニペットに表示されているようなスコープ機能の全ポイントは、使用可能なスコープを制限することです。それらをグローバルに利用できるようにするには、それらをスコープしないでください。それらをグローバルに利用できないようにするには、正しいスコープからアクセスしてください。あなたが求める組み合わせは不可能であり、実際には意味をなさない。 – ArneHugo