Итерация nodeType и nodeValue

В чем проблема при итерации nodeType и nodeValue? Почему эти и другие некоторые свойства не итерируются, хотя другие итерируются?

let item = document.querySelector('#elem');
let child = item.nodeType
for (let i of child) {
  console.log(i)
}
<div id="elem">
  txt
  <b>tag</b>
  <!--com-->
  txt
  <b>tag</b>
  <!--com-->
</div>


Ответы (1 шт):

Автор решения: Grundy

nodeType - это число, показывающее тип узла (элемент, текст и т.д.)

Если нужно получить дочерние узлы, вместо этого нужно использовать либо childNodes либо .children (только элементы)

let item = document.querySelector('#elem');


let child = item.childNodes;

for (let i of child) {
  console.log(i.textContent)
}
<div id="elem">txt<b>tag</b>
  <!--com-->txt<b>tag</b>
  <!--com-->
</div>

→ Ссылка