このように、ウィンドウオブジェクトで定義された関数があります
window["functionName"] = function(){
// code here
};
その関数が必要なときはいつでも呼び出すだけです
window["functionName"]();
これは、IE8 を除くすべてのブラウザーでうまく機能します。IE8 はエラーをスローします
SCRIPT438: Object doesn't support property or method 'functionName'
説明をグーグルで検索しましたが、何も見つかりませんでした。
編集:長い間デバッグした後、エラーの原因がわかりました
実際には、上記の関数定義は別の関数内にありました。
function otherFunction(){
window["functionName"] = function(){
// code here
};
// code here
}
屋外に移動したところ、問題なく動作するように見えました。
window["functionName"] = function(){
// code here
};
function otherFunction(){
// code here
}
しかし、なぜこの奇妙な振る舞いをするのか、まだ理解できませんか?