JavaScript関数
给我你的怀抱
给我你的怀抱 2017-06-26 10:53:22
0
6
789
リーリー

上記のコードが 1 を出力するのはなぜですか;

foo() が実行されると、これが出力されます。これはウィンドウ オブジェクトです。foo() の getName はグローバル関数式になりますか? 次の var getName も関数式です。なぜ出力されますか? 結果は 1;

foo を実行すると、次のコードと同等になりますか?

リーリー
给我你的怀抱
给我你的怀抱

全員に返信(6)
小葫芦

Fooが呼び出されないとき

リーリー

Foo()を呼び出すとき

リーリー

呼び出し後、Foo の return this は window を指すため、最終結果は 1 になります。

いいねを押す +0
扔个三星炸死你

リーリー

いいねを押す +0
黄舟

Foo().getName(); Foo で getName を実行します

いいねを押す +0
阿神

リーリー リーリー

いいねを押す +0
代言

console.log(Foo()) を確認してください。本当に window ですか?

いいねを押す +0
ringa_lee

Foo 関数の getName は var で宣言されていないため、グローバルであるため、Foo が実行されると、関数内の getName 関数が外部で定義された getName 関数を上書きします

いいねを押す +0
人気のチュートリアル
詳細>
最新のダウンロード
詳細>
ウェブエフェクト
公式サイト
サイト素材
フロントエンドテンプレート