Javascript “的含义;这是“el”;美元(';ul';,this.el)

Javascript “的含义;这是“el”;美元(';ul';,this.el),javascript,jquery,backbone.js,Javascript,Jquery,Backbone.js,我正在学习一些主干教程,我有一个关于jQuery的一般性问题,实际上我已经想了一段时间了 有时我会在jQuery选择器中看到带有第二个参数的调用,例如$('ul',this.el) 选择器中第二个参数的用途是什么?我并不是说在任何主干示例的上下文中,只是一般来说,在选择器中传递第二个参数的目的是什么,为什么它总是传递给那里的对象?我找不到关于此的任何文档。它缩小了对视图组件DOM元素中的ul标记的搜索范围。其含义与: $(this.el).find('ul') 在内部,经过一系列测试之后,jQ

我正在学习一些主干教程,我有一个关于jQuery的一般性问题,实际上我已经想了一段时间了

有时我会在jQuery选择器中看到带有第二个参数的调用,例如
$('ul',this.el)


选择器中第二个参数的用途是什么?我并不是说在任何主干示例的上下文中,只是一般来说,在选择器中传递第二个参数的目的是什么,为什么它总是传递给那里的对象?我找不到关于此的任何文档。

它缩小了对视图组件DOM元素中的
ul
标记的搜索范围。

其含义与:

$(this.el).find('ul')
在内部,经过一系列测试之后,jQuery发现它需要将其转换到上面的
.find()
调用,然后重新开始

因此,提供上下文作为第二个参数只是执行
.find()
的较慢方式


…其中,
this.constructor
$
函数,
context
是第二个参数,
selector
是第一个参数。

啊,太好了!我以为它在做那样的事情,只是无法对自己说出来。谢谢顺便说一句,你知道这样做比$(this.el)有什么性能优势吗;或$(this.el+'ul');或者本质上是一样的?我在找它。。。找不到。谢谢你的链接
// HANDLE: $(expr, context)
// (which is just equivalent to: $(context).find(expr)
} else {
    return this.constructor( context ).find( selector );
}