首先使用:优化jQuery选择器

Zna*_*kus 5 optimization jquery jquery-selectors

我有这种感觉$('.class:first')比跑得快$('.class').因此,只要我知道.class子集中只有一个,我就用它了.

是否:first使查询运行得更快,还是不必要?

Nic*_*ver 4

它实际上取决于浏览器,:first不是 CSS 选择器,而是 jQuery 过滤器 - 因此需要一些额外的解析工作...本身.class可以交给本机浏览器选择器方法(例如document.querySelectorAll()此处)。

其中任何一个实际上都会更快:

$('.class').first()
//or...
$('.class').eq(0)
//or fastest:
$('.class').slice(0, 1)
Run Code Online (Sandbox Code Playgroud)

...因为他们运行本机代码,然后只获取该集合中的第一个条目。