参考链接

for

1
2
3
for (let index = 0; index < array.length; index++) {
console.log(array[index])
}

Array map()

1
2
3
4
5
6
// value: 当前的元素
// index:当前元素的下标
// arr:循环的数组
array.map((value, index, arr) => {
console.log(value, index)
})

Array forEach()

1
2
3
4
5
array.forEach((value, index, arr) => {
console.log(value)
console.log(index)
console.log(arr)
})

for of

1
2
3
4
5
// 允许遍历 Arrays(数组), Strings(字符串), Maps(映射),
// Sets(集合)等可迭代(Iterable data)的数据结构,注意它的兼容性。
for (let i of array) {
console.log(i)
}

for in

1
2
3
4
5
6
7
8
//  for in 循环的时候,不仅遍历自身的属性,还会找到 prototype 上去,所以最好在循环体内加一个判断,
// 就用 object.hasOwnProperty(i),这样就避免遍历出太多不需要的属性。
for (const key in object) {
if (object.hasOwnProperty(key)) {
const element = object[key];
console.log(key, element)
}
}

Array reduce()

1
2
3
4
5
// 对数组进行运算,最终返回一个结果
arr.reduce( (x, y) => {
console.log(x, y)
return x + y
})

Array some()

1
2
3
4
// some判断数组是否有元素符合条件, 返回Boolean
arr.some(x => {
return x === 1
})

Array every()

1
2
// every 判断数据每一个元素是否都符合条件, 返回Boolean
arr.every(x => x > 0)

while

1
2
3
4
5
let i = 0
while(arr[i]) {
console.log(i, arr[i])
i++
}

Array filter()

1
2
// filter 返回符合条件的数组列表
arr.filter( x => x > 20)