如何将 document.querySelectorAll() 用于 jQuery 以提高性能?

How to use document.querySelectorAll() into jQuery for performance?

我了解到通过切换到 document.querySelectorAll() 而不是使用 jQuery 的本地选择器可以显着提高性能。

对于涉及数千个元素和嵌套循环等的实例,在 jQuery 中执行以下操作是否有任何性能优势?

//using querySelectorAll

elems = document.querySelectorAll('.element');
$(elems).addClass("className");  

相对于做:

//traditional jQuery
elems = $(".element");
$(items).addClass("className");

如果不是,有什么方法可以将 document.querySelectorAll 合并到 jQuery 中?

是的,应该可以。 $(elems) 将从 NodeList 创建一个 jQuery 集合对象,然后您可以在其上使用 jQuery 方法。

但是,我认为不会有您期望的那么多好处。 jQuery 已在可行时调用 querySelectorAll()。在确定 QSA 是否可用于给定选择器时可能会有少量开销。但是 jQuery 缓存了这个结果,所以如果你经常使用选择器,开销就会减少。