JavaScript 迭代

字符串

迭代是对数据的 遍历,下面是 JavaScript 中字符串的迭代方法。

// for of
for (let v of 'abc'){
    console.log(v)
}

// a
// b
// c

数组

数组的迭代方法。

/* for of */
for (let v of [1,2,3]){
    console.log(v) // 1 2 3
}

/* forEach */
['a','b','c'].forEach(function(element,index,array){
    console.log(element) // 当前元素
    console.log(index) // 当前索引
    console.log(array) // 迭代对象
})

// 'a'
// 0
//[ 1, 2, 3 ]

// 'b'
// 1
//[ 1, 2, 3 ]

// 'b'
// 2
// [ 1, 2, 3 ]

对象

对象的迭代方法,需要注意对象的迭代方式 for in,而不是 for of

// for in
var obj = {a: 1, b: 2}
for (let o in obj) {
 console.log(o)
 console.log(obj[o])
}

// 'a'
// 1

// 'b'
// 2

/*
 也可以把对象转换成数组在迭代 
 Object.keys({a: 1, b: 2}) // [a, b]
 Object.values({a: 1, b: 2}) // [1, 2]
*/

Map

map 的迭代方法。

m = new Map([[1,'a', 2, 'b']])

// forEach
m.forEach(value, key, map) {
 // 'a'
 // 1
 // new Map([[1,'a', 2, 'b']])
 // ...
}

// for of
for (let m_k of m.keys()){} // 1,2
for (let m_v of m.values()){} // a,b

Set

set 的迭代方法。

for (let s of new Set([1,2])){
    // 1,2
}
JavaScript 教程 JavaScript 运行 JavaScript 迭代 JavaScript 异常错误