2017-03-16 97 views
1

java脚本DOM中的子节点和子元素有什么区别。 例如像firstChild和childNodes [1]有什么区别?

var myTbodyElement = myTableElement.firstChild; 

var mySecondTrElement = myTbodyElement.childNodes[1]; 

我们可以替代使用的第一个孩子和子节点

+1

第二个是老二节点 - 因为程序员开始点票** 0 ** –

+1

'.firstChild'将完全等同于' .childNodes [0]',但是,是的。 – Ryan

+1

那么孩子和节点是一样的吗?并且.children和.childnode之间有区别 – cowboy

回答

0

.firstChild相当于childNodes[0]

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

can we s ubstitute使用第一个孩子和子节点

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

演示:

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);
<div id="myDiv">Some text<b>Some bold text</b>Some more text</div>