forEach for in與for of的區別

2021-08-28 00:10:08 字數 1178 閱讀 2402

objarr.foreach(function (value) );
foreach方法沒辦法使用break語句跳出迴圈,或者使用return從函式體內返回

for(var index in objarr)
以上**會出現的問題:

1.index值 會是字串(string)型別

2.迴圈不僅會遍歷陣列元素,還會遍歷任意其他自定義新增的屬性,如,objarr上面包含自定義屬性,objarr.name,那這次迴圈中也會出現此name屬性

3.某些情況下,上述**會以隨機順序迴圈陣列

for-in迴圈設計之初,是給普通以字串的值為key的物件使用的。而非陣列。

for(let value of objarr)
1.可以避免所有for-in迴圈的陷阱

2.不同於foreach(),可以使用break,continuereturn

3.for-of迴圈不僅僅支援陣列的遍歷。同樣適用於很多類似陣列的物件

4.它也支援字串的遍歷

5.for-of 並不適用於處理原有的原生物件

var uniquewords = new set(words);

for (var word of uniquewords)

for (var [key, value] of phonebookmap)
map是鍵值對組成,需要用到 es6新特性解構

// 輸出物件自身可以列舉的值

for (var key of object.keys(someobject))

Java迴圈結構fo與 while

格式 for 初始化表達試語句 判斷條件語句 條件控制語句 執行流程 1.先執行初始化表示式語句 2 執行判斷條件語句,看其值返回時true還是false 如果是true,就繼續執行 如果是false,就結束迴圈 3執行迴圈體語句 4 執行控制條件語句 5 回到2繼續執行 例如 輸出1000以內的水...

迴圈語句while和do while與for

while 說明 對條件進行判斷,true則執行語句組,然後再返回去進行判斷滿足則執行語句組,這樣可無限重複,直到對條件判斷為false結束迴圈。語句while 條件 do.while 說明 先無條件執行一次,在進行條件判斷,true這繼續迴圈,false則結束迴圈。語句do while 條件 fo...

linux shell if和case和for語句

linux shell if和case和for語句 bin bash for i 1 i 15 i do for和 以及 和 之間可以有空格也可以沒有空格 if i le 10 then 第乙個 中括號 和if及 i之間都必須有空格,10和第二個 中括號 之間必須有空格,但是 中括號 和 之間的空格...