ES6对数据新增了几个方法,在这里做一下学习记录,新增的方法有
- foreach
- map
- reduce
- filter
foreach 遍历
let score=[21,85,38,90];
score.forEach((item,index)=>{
console.log(index+":"+item)
})
以下为输出的结果
map 映射 一个对一个
个人感觉有点像for循环
let score=[19,85,38,90];
let result=score.map(item=>item>=60?"及格":"不及格")
console.log(result)
输出结果
reduce 汇总 多个输出一个
多用于算总数,购物车算总价等比较常见的应用
let score=[19,85,38,90];
var result= score.reduce(function(finall,item,index){
console.log(finall)
console.log(item)
return finall+item
})
alert(result)
下面是console的结果,可以看出来,finall的值是第一次是默认为第二个数值,从第二次开始,就是两个数值相加的结果
下面是alert的结果,finall是前几个数据相加的和,item是最后一个数据的值
filter 过滤器
过滤器嘛,顾名思义就是留下符合要求的数据
let score=[21,85,38,90];
var result= score.filter(item=>{
if(item%3==0){
return true
}else{
return false
}
})
alert(result)
关于return true 和 return false的介绍
戳我看介绍
下面是输出的结果
补充:因为这里if(item%3==0)本身就是布尔值,所以这里上面的代码可以化简为
let score=[21,85,38,90];
var result= score.filter(item=>{
return item%3==0
})
alert(result)
我觉得这样更好理解一点,而且代码比较简洁