1. 程式人生 > 其它 >JS 常用迴圈總結

JS 常用迴圈總結

1、for 迴圈

 最基本的迴圈,這裡就不多作介紹了

for(var i = 0;i < 7;i++){
     console.log(i);
}

2、for in 迴圈

 一般用於迴圈物件,如下:

    obj = {
        name: 'waq',
        age: 22,
        luck: 'come'
    }
    for (let i in obj){
        console.log(i,obj[i]);
    }

 當然也可以用來迴圈陣列,但不推薦,主要是因為迴圈陣列後得到的陣列索引是 string 而不是 number,如果要在迴圈裡面對索引進行計算就會出錯,如下:

    var arr = [88,66];
    for (let i in arr){
        console.log(i,typeof i);
        console.log(i+=i);
    }

3、for of 迴圈

 ES6新增的迴圈方法,避免了for in的所有缺點,但是不能遍歷物件。for of還有一個致命傷,沒有索引。

    var arr = [88,66,'waq'];
    for (let i of arr){
        console.log(i);
    }

 還可以遍歷字串:

    var str = 'goodLuck';
    
for (let i of str){ console.log(i);//g o o d L u c k }

4、forEach 迴圈

 forEach 迴圈裡面沒辦法使用 break 語句或使用 return 語句。而且在IE中無法實現,需要做相容處理。傳入的是一個函式。

    var arr = [88,66,'waq'];
    arr.forEach(function (value,index){
        console.log(value,index);
    })

5、map()迴圈

 不改變原陣列但是會返回新陣列,傳入的是一個函式。

    var
arr = [12,13,14]; var newArr = arr.map(i=>{ return i+=10; }) console.log(arr); console.log(newArr);