1

「 JavaScript 関数でグローバル変数を定義する」を読み、同じことを試みたかったのですが、今回はグローバル変数名として文字列を渡しました。

function createGlobal(strname){
    window.strname={
        name:"John",
        age:27
    };
}

createGlobal("myglobal");

//can't use "alert(myglobal.name);", myglobal is not defined and crashes
//however, this works v
alert(strname.name); //John

私はオブジェクトに本当に慣れていません。また、 、のような奇妙なことを試しましたがwindow.[strname]、結果はwindow.[""+strname+""]ありwindow.["'"+strname+"'"]ませんでした。

名前を文字列として渡してグローバル変数を作成するにはどうすればよいですか?

4

1 に答える 1

4

createGlobal内でこれを試してください:

window[strname] = {name:"John", age:27};
于 2013-06-19T22:46:33.293 に答える