firstChild和childNodes [1]有什么区别?

时间:2017-03-16 04:15:52

标签: javascript

java脚本DOM中子节点和子元素之间的区别是什么。 比如像

var myTbodyElement = myTableElement.firstChild;

var mySecondTrElement = myTbodyElement.childNodes[1];

我们可以使用第一个子节点替换

1 个答案:

答案 0 :(得分:0)

.firstChild相当于childNodes[0]

  • firstChild返回第一个子节点
  • childNodes返回所有子节点的集合
  • firstElementChild返回第一个子元素
  • children返回所有子元素
  • 的集合
  

我们可以使用第一个子节点替换

是的,如果您只想访问第一个。

<强>演示:

&#13;
&#13;
var d = document.getElementById('myDiv');

var firstChild = d.firstChild;
var childNodes0 = d.childNodes[0];
var firstElementChild = d.firstElementChild;
var children0 = d.children[0];

console.log("d.childNodes.length is", d.childNodes.length);
console.log(firstChild.nodeName, firstChild.textContent);
console.log(childNodes0.nodeName, childNodes0.textContent);
console.log("d.children.length is", d.children.length);
console.log(firstElementChild.nodeName, firstElementChild.textContent);
console.log(children0.nodeName, children0.textContent);
&#13;
<div id="myDiv">Some text<b>Some bold text</b>Some more text</div>
&#13;
&#13;
&#13;