【问题标题】:jquery context selector vs .find()jquery 上下文选择器与 .find()
【发布时间】:2013-08-14 07:33:44
【问题描述】:

什么更有效?

var container = $("#container");

// 1
var links1 = container.find("a");

// 2
var links2 = $("a", container);

我个人更喜欢$("a", container),因为它看起来更好,但它们在性能上是否不同?

【问题讨论】:

  • 在幕后他们甚至不同吗?
  • 这个问题似乎离题了,因为它是关于应该衡量而不是询问的性能建议。
  • 上下文语法稍微慢一些,尽管我只是在谈论毫秒的问题。不管怎样,我更喜欢使用它。
  • (1) links2 的性能比 links1 慢,因为它是 find 的包装器。 (2) links2links1 更易读,因为它使"a" 看起来像父元素,而container 像后面的子元素。我个人更喜欢container.find("a")

标签: jquery jquery-selectors


【解决方案1】:

上下文选择器$("a", container) 被转换为find。 find() 会更快,但在大多数情况下可以忽略。我会选择find(),因为它的语法对我来说非常简单。这个post 有性能比较,可以帮助您决定使用哪一个。

【讨论】:

    猜你喜欢
    • 2011-09-07
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-01-21
    • 2011-03-25
    • 1970-01-01
    • 2014-11-02
    • 1970-01-01
    相关资源
    最近更新 更多