JavaScript - i の値が 5 に等しい理由についての質問
欧阳克
欧阳克 2017-06-12 09:29:37
0
8
940
リーリー

最初の質問: これは js の知識のどの部分に属しますか?
2 番目の質問: なぜ i が 5 に等しいのか、わかりやすく説明してください。
0o0

欧阳克
欧阳克

温故而知新,可以为师矣。 博客:www.ouyangke.com

全員に返信(8)
Ty80

この問題はクロージャですか? クロージャではないと思います、そして関数の入れ子はありません それは関数ローカル変数匿名関数の問題です。 匿名関数を作成してすぐに実行する場合、クロージャは含まれません。これは、ループ

(5.

) を終了するだけです。 i 的值变成 5 退出循环, console.log(i)打印当前的 iこれは次と同等です:

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

これはクロージャではなく、for ループ速度の後に出力される単なる値です

いいねを押す +0
刘奇

これは、js にはブロックレベルのスコープがなく、関数スコープのみがあることが原因で発生する問題です。 。 。 Juはクロージャーを直接引くことができます。 。 。受け入れます。 。 。

いいねを押す +0
伊谢尔伦

JavaScript にはブロックレベルのスコープのようなものはないため、for ループ {} と if ステートメント {} 内の変数には外部からアクセスできます。

スコープはグローバルスコープとローカルスコープに分かれています

グローバル スコープは、ドキュメントの作成時にシステムによって組み込まれます。
ローカルスコープは関数を作成することで実現されます。

いいねを押す +0
刘奇
  • これは通常、クロージャを調べる問題に現れます

  • i + 1 を 5 回ループしたので、i は 5 です

いいねを押す +0
左手右手慢动作
  1. js のクロージャーについて知っておくべきです

  2. console.logが実行されるとforループの実行が完了するので、当然iは5になります

いいねを押す +0
刘奇

タイマーまたはイベントバインディングと組み合わせたクロージャを見てみましょう

いいねを押す +0
左手右手慢动作

js のクロージャ、

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