Руководство по NodeList HTML DOM
- Предыдущая страница HTML Collection
- Следующая страница HTML DOMTokenList
NodeList
NodeList - это набор аналогичных массиву объектов узлов (списков).
Узлы в NodeList можно получить через индекс (начиная с 0).
Атрибут lengthВернуть количество узлов в NodeList.
Свойства и методы
Следующие свойства и методы можно использовать на NodeList:
Название | Описание |
---|---|
entries() | Вернуть итератор с парами ключ/значение из списка. |
forEach() | Выполнить回调-функцию для каждого узла в списке. |
item() | Вернуть узел по заданному индексу. |
keys() | Использовать итератор с помощью ключей из списка. |
length | Вернуть количество узлов в NodeList. |
values() | Вернуть итератор с помощью значений из списка. |
экземпляры
Выбрать все <p>
Узел:
const myNodeList = document.querySelectorAll("p");
Элементы NodeList можно получить через индекс.
Чтобы получить доступ ко второму узлу <p>, вы можете написать:
myNodeList[1]
Внимание:Индекс начинается с 0.
Длина списка узлов HTML DOM
length
Эта функция определяет количество узлов в списке узлов:
Пример 1
myNodelist.length
Когда вы хотите итерировать узлы в списке узлов:length
Эта функция очень полезна:
Пример 2
Изменить цвет всех элементов <p> в списке узлов:
const myNodelist = document.querySelectorAll("p"); for (let i = 0; i < myNodelist.length; i++) { myNodelist[i].style.color = "red"; }
Не массив
NodeList не массив!
NodeList может выглядеть как массив, но на самом деле это не так.
Вы можете пройтись по NodeList и использовать индекс для доступа к его узлам.
Но вы не можете использовать методы массива на NodeList, такие как push()、pop() или join().
Разница между HTMLCollection и NodeList
NodeList с HTMLcollection очень похожи.
Они оба представляют собой аналогичные массиву коллекции (списка) узлов (элементов), извлеченных из документа. Узлы можно доступа через индекс. Начало индекса 0.
У них есть Атрибут lengthон возвращает количество элементов (сборников) в списке (коллекции).
HTMLCollection являетсяЭлемент документасборником.
NodeList являетсяузел документаСборник (узел элемента, узел атрибута и узел текста).
Элементы HTMLCollection можно доступа через их имя, id или индекс.
Элементы NodeList можно доступа только через их индекс.
HTMLCollection всегда являетсяТекущийколлекцией. Например: если добавить элемент <li> в список DOM, то список в HTMLCollection также изменится.
NodeList обычно являетсяСтатическийКоллекция. Например: если добавить элемент <li> в список DOM, то список в NodeList не изменится.
getElementsByClassName()
и getElementsByTagName()
Метод возвращает текущий HTMLCollection.
querySelectorAll()
Метод возвращает статический NodeList.
childNodes
Свойство возвращает текущий NodeList.
текущим списком узлов
В некоторых случаях NodeList являетсяТекущий:Изменения в DOM обновляют NodeList.
childNodes
Метод возвращает текущий NodeList.
- Предыдущая страница HTML Collection
- Следующая страница HTML DOMTokenList