JavaScript中的filter()函数是一个高阶函数,它接受一个函数作为参数,该函数的参数为一个数组,返回一个新数组,新数组是原数组中每一项经过函数处理后的结果。
filter()函数的语法
array.filter(function(currentValue, index, arr), thisValue)
其中:
- array:必填项,要处理的数组
- function:必填项,函数,用于处理数组中的每一项
- currentValue:可选项,当前处理的数组项
- index:可选项,当前处理的数组项的索引
- arr:可选项,当前处理的数组
- thisValue:可选项,函数中的this指向
filter()函数的使用方法
filter()函数的使用方法如下:
- 1.按照一定条件过滤数组
var arr = [1,2,3,4,5,6,7,8,9]; var newArr = arr.filter(function(value, index, arr){ return value > 5; }); // newArr = [6,7,8,9];
var arr = [1,2,3,4,5,6,7,8,9,1,2,3]; var newArr = arr.filter(function(value, index, arr){ return arr.indexOf(value) === index; }); // newArr = [1,2,3,4,5,6,7,8,9];
var arr = [ {name:'张三', age:18}, {name:'李四', age:20}, {name:'王五', age:22}, {name:'赵六', age:24} ]; var newArr = arr.filter(function(value, index, arr){ return value.age > 20; }); // newArr = [ // {name:'王五', age:22}, // {name:'赵六', age:24} // ];
以上就是,可以看出,filter()函数可以方便快捷地处理数组,提高开发效率。