我正在寻找一种方法来过滤 jQuery 选择的返回数组。
比方说,我有 jQuery 返回的元素数组:
window.elementSet = $("element");
现在,我想过滤这个数组,只显示具有“car”类的元素,不重新设计选择器,所以
<罢工>
window.elementSetOfCars = $("element.car");
罢工>
由于返回值是一个元素数组,我们可以只使用 .filter 或 .grep 或简单的 for/while 循环,其中我们使用 .hasClass() 或 attr("class"检查每个元素的类),或者其他什么。
最快的方法是什么?
最佳答案
您可以执行以下操作:
var elementSetOf = window.elementSet.filter(function(val,i,arr){
return (val.className.indexOf('car') >= 0);
});
但是,请记住 $(selector) 的结果实际上不是一个数组,而是一个“类似数组”的对象,这意味着很多 Array 方法和属性都可以工作,但不是全部。 More info here
关于javascript - 过滤 jQuery 选择的返回数组的最快方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23829812/