目录
ES5定义了5种迭代方法:every(),filter(),forEach(),map(),some()
每个方法都接受两个参数:1.要在每一项上运行的函数。2.运行该函数的作用域对象————影响this的值(可选)
要在每一项上运行的函数接收三个参数:1.数组项的值(item)。2.该项在数组中的位置(index)。3.数组对象本身(array)
var numbers = [1, 2, 3, 4, 5, 4, 3, 2, 1]; var everyResult=numbers.every(function(item,index,array){ return item>2; }); alert(everyResult);//false
var someResult=numbers.some(function(item,index,array){ return item>2; }); alert(someResult);//true
var filterResult=numbers.filter(function(item,index,array){ return item>2; }); console.log(filterResult);//[3,4,5,4,3]
var mapResult=numbers.map(function(item,index,array){ return item*2; }); console.log(mapResult);//[2,4,6,8,10,8,6,4,2] console.log(numbers);//[1,2,3,4,5,4,3,2,1]
var newArr=[]; numbers.forEach(function(item,index,array){ if(item>2){ newArr.push(array[index]*2); } }); console.log(newArr);//[6,8,10,8,6]