filter 过滤数据有一手
filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。
和map()类似,Array的filter()也接收一个函数。和map()不同的是,filter()把传入的函数依次作用于每个元素,然后根据返回值是true还是false决定保留还是丢弃该元素。
---------------------------for版----------------------------------
var arr= [1,2,3,4,5];
var filter = [];
for(let i = 0; i< arr.length;i++){
if(arr[i] > 3){
filter.push(arr[i]);
}
}
console.log(filter);
---------------------------filter版----------------------------------
var arr= [1,2,3,4,5];
var filter = arr.filter(function(value,index){
return value > 3;
})
console.log(filter);
优点:代码优雅简洁
缺点:只针对一维数组,实际项目中一般都是二维数组
Array.reduce 功能十分强大