1.forEach
和 for 循环一个作用,就是用来遍历数组的
语法:arr.forEach(function (item, index, arr) {})
数组的长度是多少,这个函数就执行多少次
var arr=[1,2,3]
//使用forEach遍历数组
arr.forEach(function (item,index,arr){
//item就是数组的每一项
//index就是数组的索引
//arr就是原数组
console,log('数组的第 '+index+' 项设为值是 '+item+',原数组是',arr)
})
2.map
可以对数组中的每一项进行操作,返回一个新的数组
var arr = [10, 20, 30]
var newArr = arr.map(function (item) {
return item * 10 //让每个元素扩大10倍
})
console.log(newArr) //[100, 200, 300]
3.filter
把原始数组中满足条件的都筛选出来,组成一个新的数组返回
var arr = [10, 20, 30]
var newArr = arr.filter (function (item) {
return item > 10 //让每个元素扩大10倍
})
console.log(newArr) //[ 20, 30]
4.find
只返回第一个满足条件的项
var arr = [10, 20, 30]
var newArr = arr.find (function (item) {
return item > 10 //让每个元素扩大10倍
})
console.log(newArr) //20
5.every
数组里是否每个元素满足指定条件,全部满足返回true
var arr = [10, 20, 30]
var newArr1 = arr.every (function (item) {
return item > 10 //让每个元素扩大10倍
})
var newArr2 = arr.every (function (item) {
return item > 5 //让每个元素扩大10倍
})
console.log(newArr1) //false
console.log(newArr2) //true
6.some
数组中是否有满足条件的项,一个满足则返回true
var arr = [10, 20, 30]
var newArr1 = arr.some (function (item) {
return item > 10 //让每个元素扩大10倍
})
var newArr2 = arr.some (function (item) {
return item < 5 //让每个元素扩大10倍
})
console.log(newArr1) //true
console.log(newArr2) //false
7.reduce
接收一个方法作为累加器,数组中每个值(从左到右)开始合并,最终为一个值
var arr = [10, 20, 30]
var sum = arr.reduce (function (s,item) {
return s+item
},0) //0为s的初始值
console.log(sum) //60