es6中filter和Map的区别
2020-01-14 本文已影响0人
_constructor
我们知道在es6中filter和map同时用来方便操作数组。他们的区别我们先用例子来理解一下。
一、filter:
语法:arr.filter(function(val,index,arr){})
eg:arr = [2,10,50,0,13];
arr.filter(function(val){
return val > 10;
console.log(val) //返回[50,13]
})
由此可得出:
filter会移除所有为假的数据,换句话说,也就是过滤,过滤出满足条件的数据。
二、map:
语法:arr.map(function(val,index,arr){})
用相同的代码来实现,看看结果是什么
eg:arr = [2,10,50,0,13];
arr.map(function(val){
return val > 10;
console.log(val) //返回 [false, false, true, false, true]
})
所以map一般适用于计算,可以返回计算结果。
但是当遇到条件判断时,只会返回是否为ture或false。