js中的filter

Posted sunweinan

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了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。谨慎使用!!!

以上是关于js中的filter的主要内容,如果未能解决你的问题,请参考以下文章

JS常用代码片段2-值得收藏

谷歌浏览器调试jsp 引入代码片段,如何调试代码片段中的js

VSCode自定义代码片段——JS中的面向对象编程

VSCode自定义代码片段9——JS中的面向对象编程

Chrome-Devtools代码片段中的多个JS库

Node.js JavaScript 片段中的跳过代码