Spec-Zone.ru › Web APIs

NodeIterator

Базовая поддержка Широко доступна

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.

  • Узнать больше
  • Полная совместимость
  • Отправить отзыв

Интерфейс NodeIterator представляет собой итератор для обхода узлов поддерева DOM в порядке документа.

Синтаксис

Объект NodeIterator может быть создан с помощью метода Document.createNodeIterator(), как показано ниже:

const nodeIterator = document.createNodeIterator(root, whatToShow, filter);

Свойства экземпляра

Этот интерфейс не наследует никаких свойств.

NodeIterator.root Только для чтения

Возвращает Node, представляющий корневой узел, как указано при создании NodeIterator.

NodeIterator.whatToShow Только для чтения

Возвращает битовую маску unsigned long, описывающую типы Node для соответствия. Узлы, не соответствующие шаблону, пропускаются, но соответствующие дочерние узлы могут быть включены.

Возможные значения битовой маски — константы из интерфейса NodeFilter.

Константа Числовое значение Описание
NodeFilter.SHOW_ALL 4294967295 (это максимальное значение unsigned long) Отображает все узлы.
NodeFilter.SHOW_ATTRIBUTE Устаревший 2 Отображает атрибуты Attr узлы. Это имеет смысл только при создании NodeIterator с узлом Attr в качестве корня; в этом случае это означает, что узел атрибута будет отображаться в первой позиции итерации или обхода. Поскольку атрибуты никогда не являются дочерними узлами других узлов, они не отображаются при обходе дерева документа.
NodeFilter.SHOW_CDATA_SECTION Устаревший 8 Отображает узлы CDATASection.
NodeFilter.SHOW_COMMENT 128 Отображает узлы Comment.
NodeFilter.SHOW_DOCUMENT 256 Отображает узлы Document.
NodeFilter.SHOW_DOCUMENT_FRAGMENT 1024 Отображает узлы DocumentFragment.
NodeFilter.SHOW_DOCUMENT_TYPE 512 Отображает узлы DocumentType.
NodeFilter.SHOW_ELEMENT 1 Отображает узлы Element.
NodeFilter.SHOW_ENTITY Устаревший 32 Устаревшее, больше не используется.
NodeFilter.SHOW_ENTITY_REFERENCE Устаревший 16 Устаревшее, больше не используется.
NodeFilter.SHOW_NOTATION Устаревший 2048 Устаревшее, больше не используется.
NodeFilter.SHOW_PROCESSING_INSTRUCTION 64 Отображает узлы ProcessingInstruction.
NodeFilter.SHOW_TEXT 4 Отображает узлы Text.
NodeIterator.filter Только для чтения

Возвращает NodeFilter, используемый для выбора соответствующих узлов.

NodeIterator.referenceNode Только для чтения Экспериментальный

Возвращает Node, к которому привязан итератор.

NodeIterator.pointerBeforeReferenceNode Только для чтения

Возвращает логическое значение, указывающее, привязан ли NodeIterator перед узлом NodeIterator.referenceNode. Если false, это означает, что итератор привязан после узла ссылки.

Методы экземпляра

Этот интерфейс не наследует никаких методов.

NodeIterator.detach() Устаревший

Это устаревший метод, и он больше не оказывает никакого влияния. Ранее он использовался для пометки NodeIterator как удалённого, чтобы его можно было вернуть сборщику мусора.

NodeIterator.previousNode()

Возвращает предыдущий Node в документе или null, если их нет.

NodeIterator.nextNode()

Возвращает следующий Node в документе или null, если их нет.

Спецификации

Спецификация
DOM
# interface-nodeiterator

Совместимость браузеров

Рабочий стол Мобильный
Хром Эдж Файрфокс Опера Сафари Хром для Android Файрфокс для Android Опера для Android Сафари на iOS Samsung Internet WebView Android
NodeIterator 1 12 3.5 9 3 18 4 10.1 3 1.0 4.4
detach 1 12 3.5–22 9 3 18 4–22 10.1 3 1.0 4.4
filter 1 12 3.5 9 3 18 4 10.1 3 1.0 4.4
nextNode 1 12 3.5 9 3 18 4 10.1 3 1.0 4.4
pointerBeforeReferenceNode 1 17 3.5 ≤15 3 18 4 ≤14 3 1.0 4.4
previousNode 1 12 3.5 9 3 18 4 10.1 3 1.0 4.4
referenceNode 1 17 3.5 ≤15 3 18 4 ≤14 3 1.0 4.4
root 1 12 3.5 9 3 18 4 10.1 3 1.0 4.4
whatToShow 1 12 3.5 9 3 18 4 10.1 3 1.0 4.4

См. также

  • Метод создания: Document.createNodeIterator().
  • Связанный интерфейс: TreeWalker

© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/API/NodeIterator

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API