3 回答

TA貢獻1804條經驗 獲得超7個贊
因為for循環步驟是:
1 -定義一個變量,
2 -檢查條件,
3-運行循環內的代碼,
4 -并將循環變量值增加 1,
但!在定義變量后和第一個循環之后,它會忽略第一個參數var i = 0并將循環變量加 1,并檢查條件,為什么?因為在for循環中,最后要做的就是將循環變量加1,
所以最后一個循環將循環變量增加1并檢查條件,
簡單地說:變量已通過循環更改為 5,因為在第一個循環之后它將變量增加 1 并檢查條件
希望我的回答對你有用!

TA貢獻1155條經驗 獲得超0個贊
在循環內部,它記錄從0
到的數字4
。最后一個i++
設置i
為5
,循環停止,因為i < 5
不再為真。然后console.log(i)
after 循環記錄這個值。

TA貢獻1833條經驗 獲得超4個贊
這就是 var 在 JS 中的工作方式,也是所有語言中 for 循環的工作方式。
當您使用 var 關鍵字聲明變量時,它被提升到函數范圍,或者如果不在函數內部,則為全局。這使您可以在 for 循環范圍之外訪問 var。嘗試將 var 更改為 let 看看會發生什么。
其次,由于您的條件,您沒有在 for 循環中看到 5 打印i < 5。i++導致“i”從 4 變為 5,這打破了 for 循環條件,并且不打印“i”。
最后 for 循環外的 console.log(i) 應該只打印 5 因為那是 i 在那個點的值而不是
console.log(i);
// prints 0 1 2 3 4 5
// should print 5
添加回答
舉報