jquery - : $ (".elt", $this) 或 $this.find (".elt"); 哪个更快?

标签 jquery performance

var $this = $(this);

鉴于上述情况,哪个更快:$(".elt", $this)$this.find(".elt")

我问是因为第一个看起来更简洁,但如果它转换为 $($this).find(".elt") [sic],似乎它实际上可以慢一点。

最佳答案

使用 $("#elt") 速度要快得多,因为只有一个具有 id="elt" 的元素是有效元素。 (ID 必须是唯一的)

编辑:如果您仅使用它作为示例,并且同样的问题适用于使用类而不是 ID,则由于 jquery 内部的工作方式,两种方法应该相对相同。

$(".elt", $this) 转换为 $this.find(".elt") ,与 $this.find 相同(“.elt”)

一次运行数千次迭代后,您可能会发现两者之间的差异,但在正常情况下,您最好使用更易于阅读的那个。

关于jquery - : $ (".elt", $this) 或 $this.find (".elt"); 哪个更快?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9039859/

相关文章:

android - 在原生 Android 游戏中使用 Box2D 而不是使用 HTML5 canvas 的 Box2Dweb 有很大的不同吗?

php - 如何让基于 curl 的 URL 监控服务轻量级运行?

iOS5 和 OpenGL ES 2.0 最佳编译器

javascript - 从另一个函数中调用 twitter bootstrap 选项卡函数

jquery - 为什么左 css 属性函数在我的动画函数中不起作用

javascript - 淡入/淡出导航栏

java - 有没有更有效的方法来写入文件?

performance - 负载测试原始 ssl/tls

javascript - 从 FormData 对象中排除不可见的表单元素

java - Window.location.href 有时不工作的原因是什么?