在Chrome中,这会提供HTML标记:
var image = document.getElementsById('image');
console.log(image);
在Chrome中,这会提供各种信息,例如clientWidth
等:
console.log([image]);
为什么会这样?
答案 0 :(得分:4)
HTMLElement
是一种挑剔的方法。它是由浏览器团队决定实现的,因为没有正式的规范(最后我检查过)。
在第一个console.log
Chrome.console似乎在您的HTMLElement上运行.log(image)
(或等效)方法,并为您提供字符串输出。
在第二个.toString
Chrome.console中输出数组的内容作为索引对象/基元。它不会尝试处理数组的子节点与.log([image])
的第一级参数相同,因此它为您提供实际的HTMLElement对象,而不是字符串输出。
答案 1 :(得分:1)
console.log(image);
这会记录文档中HTMLELement
的直接引用,显示实际的<img>
(或任何其他元素)标记。
console.log([image]);
这里传递一个Array
作为参数,它将记录一个数组。该数组只会显示Object
的{{1}}。