只是出于兴趣,是否有任何主要优点/缺点使用?
直接从文档中说:
not()
=从匹配元素集中删除元素。
filter()
=将匹配元素集减少到匹配元素集
选择器或传递函数的测试。
例如,当我通过一个函数时,它们都有相同的结果?在这种情况下哪种情况最好?
$("select").change(function() {
var val = this.value;
$("tr").hide().filter(function(index){
return ($(this).data("foo") == val || val == 0);
}).show();
});
答案 0 :(得分:3)
区别在于语法方法。
使用not()
,指定不想要的内容;使用filter()
指定做想要的内容。
答案 1 :(得分:1)
filter()
=>包含选择器表达式的字符串,以匹配当前的元素集。
not()
=>内部接受所有选择器:not(),例如:: not(div a)和:not(div,a)。
根据性能观点过滤更快
filter()
>> not()