jQuery中$.grep() 过滤函数 数组过滤
在jQuery中,$.grep()方法提供了一种方便的方式来过滤数组。 该函数可以对数组进行过滤,返回符合条件的元素组成的新数组。
语法
$.grep(array, function(elementOfArray, indexInArray), invert)
参数说明:
- array:必选参数。需要过滤的原始数组。
- function:必选参数。回调函数,每个元素的回调函数。函数参数包括 elementOfArray(当前元素) 和 indexInArray(当前索引)。
- invert:可选参数。Boolean类型。默认值为false。为true时,把function结果为true时的元素过滤掉,返回false。
示例1
var array = [1, 2, 3, 4, 5, 6, 7, 8];
var filteredArray = $.grep(array, function(n, i) {
return (n % 2 == 0 && i > 3);
});
console.log(filteredArray);
结果为:
[6, 8]
解释:在这个例子中,我们过滤了数组array中大于3的偶数元素。得到的结果就是只有6和8。
示例2
var array = [{name: 'Lucy', gender: 'female'}, {name: 'Tom', gender: 'male'}, {name: 'Mike', gender: 'male'}, {name: 'Lily', gender: 'female'}];
var filteredArray = $.grep(array, function(obj) {
return (obj.gender == 'male');
});
console.log(filteredArray);
结果为:
[{name: 'Tom', gender: 'male'}, {name: 'Mike', gender: 'male'}]
解释: 在这个例子中,我们过滤了一个对象数组array,只保留了其中的gender为male的元素,得到的结果是第二个和第三个元素。
总之,$.grep()是jQuery提供的非常方便的过滤数组的方法,我们可以利用它根据各种各样的条件和规则来过滤数组。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:jQuery中$.grep() 过滤函数 数组过滤 - Python技术站