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]