我对DOM有疑问。考虑以下javascript代码,输出将为5.
<body>
<p>Hello</p>
<script>
function countBody() {
var childs = document.getElementsByTagName("body")[0].childNodes;
alert(childs.length);
}
window.onload = countBody;
</script>
</body>
由于我有两个元素节点和两个文本节点,第五个节点是什么?
答案 0 :(得分:4)
您有三个文本节点。
...您可以遍历childNodes
和console.log()
每个值来查看。
答案 1 :(得分:0)
请亲自检查一下:
<body>
<p>Hello</p>
<script>
function countBody() {
var childs = document.getElementsByTagName("body")[0].childNodes;
console.log([].map.call(childs, function (node) { return node.textContent; }));
}
window.onload = countBody;
</script>
</body>
&#13;
您计算中错过了一个文本节点。请注意,代码段的输出与您提供的代码不同。