【发布时间】:2014-05-23 12:53:17
【问题描述】:
我正在寻找一种过滤jQuery选择的返回数组的方法。
假设我有 jQuery 返回的元素数组:
window.elementSet = $("element");
现在,我想过滤这个数组,只显示具有“汽车”类的元素,无需重新设计选择器,所以
window.elementSetOfCars = $("element.car");
由于返回值是一个元素数组,我们可以只使用 .filter 或 .grep 或简单的 for / while 循环,我们使用 .hasClass() 或 attr("class" ),或者其他什么。
最快的方法是什么?
【问题讨论】:
-
为什么不自己进行基准测试呢?使用 jsperf 进行测试 :-)
-
谢谢,我不得不承认,我不知道这个网站 :) - 不过,我认为,其他人可能会遇到这个问题,并且在编码过程中发现答案也很有帮助。
-
只要这种过滤只是在内存中进行,并且如果您没有数百万个元素,那么它应该无关紧要,因为速度差异可以忽略不计。
-
并非如此,但如果许多其他功能同时运行,它确实如此 :)
-
我同意值得在这里提出问题和答案,但我想帮助您找到自己的答案。 :-) 如果您尝试一下,请务必在此处发布您的结果。我把我的回复作为评论,因为显然这不是一个答案。
标签: javascript jquery arrays loops selector