jQuery中find和filter的区别

Posted ysx_小鱼

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了jQuery中find和filter的区别相关的知识,希望对你有一定的参考价值。

这是jQuery里常用的2个方法。
他们两者功能是完全不同的,而初学者往往会被误导。


首先 我们看.find()方法:
现在有一个页面,里面html代码为;
程序代码

<div class="css">
     <p class="rain">测试1</p>
</div>
<div class="rain">
     <p>测试2</p>
</div>

如果我们使用find()方法:

var $find = $("div").find(".rain");
alert( $find.html() ) ;

将会输出:

如果使用filter()方法:

var $filter = $("div").filter(".rain");
alert( $filter.html() );

将会输出:

也许你已经看出它们的区别了。
find()会在div元素内 寻找 class为rain 的元素,是对它的子集操作。
而filter()则是筛选div的class为rain的元素,是对自身集合元素筛选。

 

另外find()其实还可以用选择器表示:

var $select = $("div .rain");

 

以上是关于jQuery中find和filter的区别的主要内容,如果未能解决你的问题,请参考以下文章

jQuery基础---filter()和find()

JQ中find()与filter()的区别

Files.walk.filter 和 Files.find 有啥区别?

filter()和find()的用法区别

ES6内置方法find 和 filter的区别在哪

四filter和find函数的区别