--- title: Node.childNodes slug: Web/API/Node/childNodes translation_of: Web/API/Node/childNodes ---
Доступный для чтения аттрибут Node.childNodes
возвращает коллекцию дочерних элементов данного элемента.var ndList = elementNodeReference.childNodes;
ndList -- упорядоченная коллекция объектов элементов, которые являются детьми данного элемента. Если у элемента нет детей, ndList пуст.
ndList -- переменная, хранящая список дочерних элементов. Тип этого списка -- {{domxref("NodeList")}}.
// parg -- ссылка на элемент <p> if (parg.hasChildNodes()) { // Таким образом, сначала мы проверяем, не пуст ли объект, есть ли у него дети var children = parg.childNodes; for (var i = 0; i < children.length; ++i) { // сделать что-то с каждым внутренним элементом через children[i] // ПРИМЕЧАНИЕ: Список является ссылкой, Добавление или удаление дочерних элементов изменит список } }
// Это один из способов удалить все дочерние элементы из элемента // box -- ссылка на элемент с детьми while (box.firstChild) { //Список является ссылкой, то есть он будет переиндексирован перед каждым вызовом box.removeChild(box.firstChild); }
Элементы в коллекции -- объекты, а не строки. Чтобы получить данные из этих объектов, вы должны использовать их свойства (например, elementNodeReference.childNodes[1].nodeName
чтобы получить имя, и т. д.).
Объект document
обладает 2-мя детьми: декларацией Doctype и корневым элементов, к которому как правило обращаются как documentElement
. (В (X)HTML документах это HTML-элемент.)
childNodes
также включают, например, текстовые узлы и комментарии. Чтобы пропустить их, используйте {{ domxref("ParentNode.children") }} взамен.