js遍歷for,forEach,for-in,for-of之間的區別
阿新 • • 發佈:2018-12-11
在js中經常要是用for迴圈遍歷陣列,物件;那for, forEach, for in, for of,之間有什麼區別呢?
let arr = [1,2,3,4,5]
a.a = 'a'
for
原始的遍歷方法
程式設計式
for(var i =0; i<arr.length;i++){
console.log(arr[i])
}
// 1
// 2
// 3
// 4
// 5
forEach
宣告式(不關心如何實現的)
不支援return
arr.forEach(function(item){
console. log(item)
})
// 1
// 2
// 3
// 4
// 5
for in
key
會變成字串型別
包含陣列的私有屬性
for (let key in arr) {
console.log(arr[key]);
}
// 0
// 1
// 2
// 3
// 4
// a
for of
支援return
不遍歷私有屬性
不能遍歷物件
for (let val of arr){
console.log(val)
}
// 1
// 2
// 3
// 4
// 5