$()在jQuery中意味着什么?

var username = $("#username"), password = $("#password"), allFields = $([]).add(username).add(password); 

什么是全场? 什么是$([])?

作为Javascript / jQuery的新手,我以前从未见过这个$([])表示法,我对它的相关方法很感兴趣。

鉴于它的“$([])”,搜索起来很棘手。 谷歌在Javascript中搜索数组(猜测那个东西是某种数组)产生了我熟悉的典型数组。

那么$([])是什么? 谁能指点我一些文件? 我有兴趣学习如何使用这个奇怪的东西。

jQuery函数接受DOM节点数组。

$([document.body])例如,它将通过包装在该数组中传递的所有DOM元素来返回jQuery对象。 但是,因为在您的示例中没有开始的DOM对象,并且它只是一个空数组,所以甚至不需要传递空数组。

在没有任何参数的情况下调用jQuery函数会返回一个空集。 取自jQuery文档,

返回空集

从jQuery 1.4开始,调用不带参数的jQuery()方法会返回一个空的jQuery集。 在以前版本的jQuery中,这将返回包含文档节点的集合。

所以,如果您改为调用,那么您的示例将会起作用

 $().add(username).add(password); 

正如其他答案所提到的那样,文档说,在v 1.4之前需要传递一个空数组。

[]这是一个空数组。 用$()包装它用jQuery的函数过度充电。

在javascript中,您可以通过以下方式创建数组:

 var foo = []; 

它是在创建jQuery对象时传递的空数组。 想必要初始化一些东西。

不应该是必要的,至少不是最新版本的jQuery。

这是一个没有数组的例子: http : //jsfiddle.net/MAzLN/

工作正常,因为alert()显示对象中的一个元素。

当创建对象时,jQuery将length属性初始化为0 ,所以我不确定目的是什么,除非过去需要它。

我相信它会创建一个空的jQuery集合对象。