forEach()是数组循环的一种方法,它自身包含三个参数(value(数组元素,必须),index(索引),arr(数组))
只包含第一个参数,可以使用箭头函数或者普通函数:curr, index, arr 输出为:
题:let arr=[89,34,56, 1000,100],要求把小于100的数字找出来,组成一个新的数组
let arr2 = []
arr.forEach((value)=>{
if(value<100){
arr2.push(value)
}
})
return arr2
var arr = [1, 2, 3];
arr.forEach(function(curr, index, arr){
console.log(curr, index, arr)
})
1 0 [1, 2, 3]
2 1 [1, 2, 3]
3 2 [1, 2, 3]
包含二个参数时,只能使用普通函数: 第二个参数可选
var arr = [1, 2, 3];
arr.forEach((curr, index, arr){
// 此时的this指的是,forEach 第二个参数,[4, 5, 6];
// 如果使用 箭头函数,this 会向上查找,指向有问题
console.log(curr, index, arr, this)
}, [4, 5, 6])
输出内容
1 0 [1, 2, 3] [4, 5, 6]
2 1 [1, 2, 3] [4, 5, 6]
3 2 [1, 2, 3] [4, 5, 6]