遍历数组的常用方法
传统的for循环
var arr = ["first","second","third","fourth",3,5,8]; for(var i = 0; i < arr.length;i++){ console.log(arr[i]); } //输出: first second third fourth 3 5 8
foreach
被传递给foreach的函数会在数组的每个元素上执行一次,元素作为参数传递给该函数
var arr = ["first","second","third","fourth",3,5,8]; //element 表示arr的单元项,index 表示arr单元项对应的索引值 arr.forEach(function(element,index){ console.log(element + '/' + index); }) //输出结果: first/0 second/1 third/2 fourth/3 3/4 5/5 8/6
注意:未赋值的值是不会在foreach循环迭代的,但是手动赋值为undefined的元素是会被列出的
var arr1 = ["first","second", ,"fourth",3,5,8]; arr1.forEach(function(element,index){ console.log(element + '/' + index); }) //输出结果 first/0 second/1 fourth/3 3/4 5/5 8/6
map
遍历数组,并通过callback对数组元素进行操作,并将所有操作结果放入数组中并返回该数组
var arr=[1,2,3,4] let result=arr.map(item => item*item) console.log(result) //[1,4,9,16]
filter
遍历数组,并通过callback对数组元素进行操作,并将所有操作结果中为true的元素放入数组中并返回该数组
let arr=[1,2,3,4] let result=arr.filter(item => item>3) console.log(result)//[4]
every
遍历数组,并通过callback对数组元素进行操作,只有所有操作结果都为true的时候返回true,其余false
let arr=[1,2,3,4] let result=arr.every(item => item>3) console.log(result) //false
some
遍历数组,并通过callback对数组元素进行操作,只要操作结果有一个为true的时候就返回true,其余false
let arr=[1,2,3,4] let result=arr.some(item => item>3) console.log(result)