1

JavaScriptの関数の外でどのような種類の変数を宣言できますか?次のコードを理解するのに少し問題があります。

このコードは影響しませんsubtitle

var element = window.document.getElementById("subtitle");
var test = "Changed!";

function check(){
    element.innerHTML = test;
}

ただし、element関数内に移動すると、subtitle要素が「変更されました!」に変わります。

var test = "Changed!";

function check()
{
    var element = window.document.getElementById("subtitle");
    element.innerHTML = test;
}

window関数の外部にオブジェクトを割り当てることができないというルールはありvarますか、コードに誤りがありますか、それともJavaScript変数を理解していないだけですか?

4

1 に答える 1

2

グローバル変数には、任意のデータ型を含めることができます。最初に表示されたコードは、の値をフェッチしたときにドキュメントが読み込まれないために機能していない可能性がありますがelement、2番目のコードは、check()が呼び出されるまでにドキュメントが読み込まれたために機能しています。

グローバル変数を使用する場合は、次のことを試してください。

var element;
var test = "Changed!";

window.onload = function() {
    element = window.document.getElementById("subtitle");
    check();
}
于 2012-09-28T00:17:07.247 に答える