filter函数是JavaScript中常用的一个函数,它的作用是对一个数组中的每一个元素进行指定的操作,返回符合指定条件的元素的新数组。它的用法如下:
var arr = [1,2,3,4,5]; // 过滤出偶数 var result = arr.filter(function(item){ return item % 2 === 0; }); console.log(result); // [2,4]
filter函数的应用场景非常多,比如可以用它来过滤数组中的重复元素:
var arr = [1,1,2,3,4,4,5]; // 过滤出不重复的元素 var result = arr.filter(function(item, index, arr){ return arr.indexOf(item) === index; }); console.log(result); // [1,2,3,4,5]
filter函数也可以用来过滤掉数组中不符合条件的元素:
var arr = [ {name: 'Tom', age: 18}, {name: 'Jack', age: 20}, {name: 'John', age: 22}, {name: 'Lucy', age: 16} ]; // 过滤出年龄大于18岁的元素 var result = arr.filter(function(item){ return item.age > 18; }); console.log(result); /* [ {name: 'Jack', age: 20}, {name: 'John', age: 22} ] */
filter函数还可以用来查找符合条件的对象:
var arr = [ {name: 'Tom', age: 18}, {name: 'Jack', age: 20}, {name: 'John', age: 22}, {name: 'Lucy', age: 16} ]; // 查找name为Jack的对象 var result = arr.filter(function(item){ return item.name === 'Jack'; }); console.log(result); // [{name: 'Jack', age: 20}]
filter函数的应用场景非常多,可以用来过滤数组中的重复元素、不符合条件的元素以及查找符合条件的对象等等,是一个非常有用的函数。