当jQuery为元素创建新的包装器对象时?

时间:2009-05-29 08:01:21

标签: jquery

如果我打电话给前任,有人可以告诉我。

var obj1 = $('#element_id')
var obj2 = $('#element_id')

obj1会引用与obj2相同的javascript对象,还是会有2个不同的对象,它们包含相同的HTML元素?

那些包含对象集合的复杂选择器,如('。my_class,.my-class2')呢?

3 个答案:

答案 0 :(得分:2)

它们将是不同的对象。

你很容易测试自己:

var obj1 = $('#test');
var obj2 = $('#test');
var array = new Array();
array[0] = obj1;
alert(obj1 == array[0]);
alert(obj1 == obj2);

第一个提示将为“true”。第二个是“假”。

答案 1 :(得分:2)

它们不同,这就是store your jQuery objects的常见做法,你可以减少选择器解析,DOM转换等......

答案 2 :(得分:1)

有没有机会让第一个对象只有选择器?当我在该对象中存储一些值并希望从代码的另一部分读取它们时,这是必需的。