filter 对已知数组进行筛选,返回为true的元素或对象并组成一个新数组

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了filter 对已知数组进行筛选,返回为true的元素或对象并组成一个新数组相关的知识,希望对你有一定的参考价值。

参考技术A 定义和用法

filter() 方法创建一个新的数组,新数组中的元素是通过检查指定数组中符合条件的所有元素。

js中的filter

filter是常说的增删改查中的‘查’,当对一个数组进行筛选时,经常会使用indexOf 和es6中的includes()方法。filter是es5中的一种迭代方法,其定义为:对数组中的每一项运行给定函数,返回该函数会返回true的项组成的数组 。

例:要返回一个所有数值都大于2的数组

var number = [1,2,3,4,5,4,3,2,1]

分析:indexOf或者incluses()方法去检索数组中是否包含某个元素,在这种情况下不好用。使用filter

var numbers = [1,2,3,4,5,4,3,2,1];
var filterResult = numbers.filter(function(item,index,array){
    return (item > 2)
});

console.log(filterResult);    //[3,4,5,4,3]

filter方法接受3个参数:数组项的值,该项在数组中的位置和数组本身。

与此类似的方法有map , forEach , every , map , some 等,(不一一介绍)

此方法可大大方便处理数组的任务,但这些方法有兼容性问题,兼容的浏览器有IE9+ 、Firefox2+、Safari3+ 、 Opera9.5+、Chrome。谨慎使用!!!

以上是关于filter 对已知数组进行筛选,返回为true的元素或对象并组成一个新数组的主要内容,如果未能解决你的问题,请参考以下文章

filter筛选数组

excel filter函数中 筛选条件如何调节成数组?

js--数组方法

filter()

js 数组循环的几种方法及返回值

js中的filter方法和map方法