我想知道Grep和Filter之间的区别:
筛选器:
将匹配元素的集合减少到与选择器匹配或通过功能测试的元素。
Grep:
查找满足过滤功能的数组元素。原始阵列不受影响。
好。
所以如果我在GREP中这样做:
var arr = [ 1, 9, 3, 8, 6, 1, 5, 9, 4, 7, 3, 8, 6, 9, 1 ];
myNewArray= jQuery.grep(arr, function(n, i){
return (n != 5 && i > 4);
});
我也可以:
var arr = [ 1, 9, 3, 8, 6, 1, 5, 9, 4, 7, 3, 8, 6, 9, 1 ];
myNewArray= $(arr).filter( function(n, i){
return (n != 5 && i > 4);
});
在这两种情况下,我仍然可以访问原始数组...
所以...区别在哪里?
.grep()是用于一般数组处理的辅助方法,而.filter()通常用于缩小元素选择范围。我不认为.grep()返回jQuery对象,并且您不能链接它(jQuery.fn.grep不存在)。