只是出于兴趣,使用它们有什么主要优点/缺点吗?
直接从文档中说:
not() = 从匹配元素集中删除元素。
filter()= 将匹配元素集减少到与选择器匹配或通过函数测试的元素集。
例如,当我传递一个函数时,它们都具有相同的结果?在这种情况下哪个最好?
$("select").change(function() {
var val = this.value;
$("tr").hide().filter(function(index){
return ($(this).data("foo") == val || val == 0);
}).show();
});
Run Code Online (Sandbox Code Playgroud)
区别只是句法方法。
使用not(),您可以指定您不想要的内容;用filter()你指定你什么都想要。