リーリー
なぜ a は 2 ではないのですか?
オブジェクト内の a:2 は何を意味しますか?
なぜ a は 2 ではないのですか?
オブジェクト内の a:2 は何を意味しますか?
リーリー
明示的に指定しない場合でも、グローバル スコープ内の変数のままです。
リーリー
スコープの問題は、 a を直接ポップアップすると、プログラムはまず現在のスコープ内で a を探し、見つからない場合は外側を探します。これは var a を見つけます。window.a と同様に、実際、ここで a を直接ポップアップすると、window.a のグローバル スコープで a を見つけるのと同じになります。探しているのは object.a ではありませんか? 前述したように、探しているのは obejct.a ではなく window.a のスコープ環境と同等です。オブジェクト指向プログラミング言語として、js にはすべてが属する場所が必要です。これを理解しないと、一般に、js がすべてを所有していることを黙認することになります。ウィンドウの下に定義されます。したがって、最初にどの a であるかを定義しない場合、 a はウィンドウに直接属することと同じになります。もちろん、関数の下に定義されているものは、関数のスコープに属することに相当します。詳しく言うことはあまりありません。さらに詳しい情報をお読みください。