这是我在Chrome控制台中遗漏的东西。我正在关注一个截屏视频,其中javascript对象以类似于这样的可浏览的tre结构显示:
(此处为箭头)对象
例如,当输入这个时,我只得到一个空数组:
的jQuery()
答案 0 :(得分:4)
如果你想浏览jQuery对象中的元素,你必须先选择一些东西
$()
返回一个空的jQuery对象。
另一方面,如果要浏览所创建对象的方法/属性,则应使用console.dir
方法,这样可以更深入地查看对象:
console.dir(jQuery());
答案 1 :(得分:2)
您输入的对象
jQuery()
是一个空的jQuery对象,它由与空数组
相同的语法表示[]
jQuery Objects是您从正文中选择的html元素的类似数组的对象。在你的情况下,选择器(你通常写入函数的函数的第一个参数)是空的,所以没有什么可以搜索jQuery,它返回一个空对象。 如果你要传递带有DOM元素的参数(例如正文),它将返回数组中的正文
jQuery('body') //=> Array with the body html element inside
请注意,jQuery对象中的HTML元素通常与Google控制台中的标准对象不同。对于标准对象,您将获得Object作为树结构的对象,并在其前面展开箭头(就像您在截屏视频中看到的那样),使用HTML元素,您将得到DOM node,但是没有要扩展的属性或方法。
要了解其中的差异,请尝试以下方法:
在Chrome控制台中显示实例或标准对象:
var object = {
hi: 'im an object',
and_i: 'am represented as a tree like structure',
i_can_haz: function() { return 'this is great, it shows all the stuff' }
};
如果再次输入:
object
您将获得Chrome控制台对象代表。
对于HTML对象,只需执行此操作
var object = document.getElementsByTagName('body');
如果要访问其属性和函数,请使用dir方法
dir(object);
您可以在几乎任何对象上使用dir来访问属性
对象将是body元素的表示。如前所述,所有jQuery在选择时都将这些元素放入数组中,基本上就是这样。