Интерфейс NamedNodeMap
public interface NamedNodeMap
Объекты, реализующие интерфейс
NamedNodeMap, используются для представления коллекций узлов, к которым можно обращаться по имени. Обратите внимание, что NamedNodeMap не наследует NodeList; NamedNodeMaps не поддерживаются в каком-либо определённом порядке. К объектам, содержащимся в объекте, реализующем NamedNodeMap, также можно обращаться по порядковому индексу, однако это сделано лишь для удобства перечисления содержимого NamedNodeMap и не подразумевает, что DOM задаёт порядок этих узлов. Объекты NamedNodeMap в DOM являются динамическими.
См. также Спецификацию базового уровня 3 объектной модели документа (DOM).
- Начиная с версии:
- 1.4, DOM Level 2
Краткое описание методов
| Модификатор и тип | Метод | Описание |
|---|---|---|
int |
getLength() |
Количество узлов в этой карте. |
Node |
getNamedItem |
Получает узел, указанный по имени. |
Node |
getNamedItemNS |
Получает узел, указанный по локальному имени и URI пространства имён. |
Node |
item |
Возвращает элемент index по счёту в карте. |
Node |
removeNamedItem |
Удаляет узел, указанный по имени. |
Node |
removeNamedItemNS |
Удаляет узел, указанный по локальному имени и URI пространства имён. |
Node |
setNamedItem |
Добавляет узел, используя его атрибут nodeName. |
Node |
setNamedItemNS |
Добавляет узел, используя его namespaceURI и localName. |
Подробное описание методов
getNamedItem
Node getNamedItem(String name)
Получает узел, указанный по имени.
- Параметры:
-
name—nodeNameузла, который требуется получить. - Возвращает:
Node(любого типа) с указаннымnodeNameилиnull, если он не соответствует ни одному узлу в этой карте.
setNamedItem
Node setNamedItem(Node arg) throws DOMException
Добавляет узел, используя его атрибут
Поскольку атрибут
nodeName. Если в этой карте уже есть узел с таким именем, он заменяется новым. Замена узла самим собой не оказывает никакого эффекта. Поскольку атрибут
nodeName используется для определения имени, под которым должен храниться узел, узлы некоторых типов (имеющие «специальное» строковое значение) нельзя хранить одновременно: их имена будут конфликтовать. Это считается предпочтительным вариантом по сравнению с разрешением псевдонимов узлов.- Параметры:
-
arg— узел, который нужно сохранить в этой карте. Позднее к узлу можно будет обратиться, используя значение его атрибутаnodeName. - Возвращает:
- Если новый
Nodeзаменяет существующий узел, возвращается заменённыйNode; в противном случае возвращаетсяnull. - Выбрасывает:
-
DOMException— WRONG_DOCUMENT_ERR: возникает, еслиargсоздан другим документом, а не тем, который создал эту карту.
NO_MODIFICATION_ALLOWED_ERR: возникает, если эта карта доступна только для чтения.
INUSE_ATTRIBUTE_ERR: возникает, еслиargявляетсяAttr, которое уже является атрибутом другого объектаElement. Пользователь DOM должен явно клонировать узлыAttr, чтобы повторно использовать их в других элементах.
HIERARCHY_REQUEST_ERR: возникает при попытке добавить узел, который не может содержаться в этой NamedNodeMap. Например, при попытке вставить в карту атрибутов Element объект, отличный от узла Attr, или узел, отличный от Entity, в карту Entity объекта DocumentType.
removeNamedItem
Node removeNamedItem(String name) throws DOMException
Удаляет узел, указанный по имени. Если эта карта содержит атрибуты, связанные с элементом, и известно, что у удалённого атрибута есть значение по умолчанию, немедленно появляется атрибут со значением по умолчанию, а также соответствующими URI пространства имён, локальным именем и префиксом, если применимо.
- Параметры:
-
name—nodeNameузла, который требуется удалить. - Возвращает:
- Удалённый из этой карты узел, если существует узел с таким именем.
- Выбрасывает:
-
DOMException— NOT_FOUND_ERR: возникает, если в этой карте нет узла с именемname.
NO_MODIFICATION_ALLOWED_ERR: возникает, если эта карта доступна только для чтения.
item
Node item(int index)
Возвращает элемент
index по счёту в карте. Если index больше или равно количеству узлов в этой карте, возвращается null.- Параметры:
-
index— индекс в этой карте. - Возвращает:
- Узел на позиции
indexв карте илиnull, если индекс недопустим.
getLength
int getLength()
Количество узлов в этой карте. Диапазон допустимых индексов дочерних узлов — от
0 до length-1 включительно.getNamedItemNS
Node getNamedItemNS(String namespaceURI, String localName) throws DOMException
Получает узел, указанный по локальному имени и URI пространства имён.
Согласно [пространствам имён XML], приложениям следует передавать значение null в качестве параметра namespaceURI методов, если пространство имён отсутствует.
Согласно [пространствам имён XML], приложениям следует передавать значение null в качестве параметра namespaceURI методов, если пространство имён отсутствует.
- Параметры:
-
namespaceURI— URI пространства имён узла, который требуется получить. -
localName— локальное имя узла, который требуется получить. - Возвращает:
Node(любого типа) с указанными локальным именем и URI пространства имён илиnull, если они не соответствуют ни одному узлу в этой карте.- Выбрасывает:
-
DOMException— NOT_SUPPORTED_ERR: может возникнуть, если реализация не поддерживает функцию «XML», а язык, предоставляемый объектом Document, не поддерживает пространства имён XML (например, [HTML 4.01]). - Начиная с версии:
- 1.4, DOM Level 2
setNamedItemNS
Node setNamedItemNS(Node arg) throws DOMException
Добавляет узел, используя его
Согласно [пространствам имён XML], приложениям следует передавать значение null в качестве параметра namespaceURI методов, если пространство имён отсутствует.
namespaceURI и localName. Если в этой карте уже есть узел с таким URI пространства имён и локальным именем, он заменяется новым. Замена узла самим собой не оказывает никакого эффекта. Согласно [пространствам имён XML], приложениям следует передавать значение null в качестве параметра namespaceURI методов, если пространство имён отсутствует.
- Параметры:
-
arg— узел, который нужно сохранить в этой карте. Позднее к узлу можно будет обратиться, используя значения его атрибутовnamespaceURIиlocalName. - Возвращает:
- Если новый
Nodeзаменяет существующий узел, возвращается заменённыйNode; в противном случае возвращаетсяnull. - Выбрасывает:
-
DOMException— WRONG_DOCUMENT_ERR: возникает, еслиargсоздан другим документом, а не тем, который создал эту карту.
NO_MODIFICATION_ALLOWED_ERR: возникает, если эта карта доступна только для чтения.
INUSE_ATTRIBUTE_ERR: возникает, еслиargявляетсяAttr, которое уже является атрибутом другого объектаElement. Пользователь DOM должен явно клонировать узлыAttr, чтобы повторно использовать их в других элементах.
HIERARCHY_REQUEST_ERR: возникает при попытке добавить узел, который не может содержаться в этой NamedNodeMap. Например, при попытке вставить в карту атрибутов Element объект, отличный от узла Attr, или узел, отличный от Entity, в карту Entity объекта DocumentType.
NOT_SUPPORTED_ERR: может возникнуть, если реализация не поддерживает функцию «XML», а язык, предоставляемый объектом Document, не поддерживает пространства имён XML (например, [HTML 4.01]). - Начиная с версии:
- 1.4, DOM Level 2
removeNamedItemNS
Node removeNamedItemNS(String namespaceURI, String localName) throws DOMException
Удаляет узел, указанный по локальному имени и URI пространства имён. Если эта карта содержит атрибуты, связанные с элементом, удалённый атрибут может иметь значение по умолчанию; это определяется атрибутом attributes интерфейса
Согласно [пространствам имён XML], приложениям следует передавать значение null в качестве параметра namespaceURI методов, если пространство имён отсутствует.
Node. В этом случае немедленно появляется атрибут со значением по умолчанию, а также соответствующими URI пространства имён, локальным именем и префиксом, если применимо. Согласно [пространствам имён XML], приложениям следует передавать значение null в качестве параметра namespaceURI методов, если пространство имён отсутствует.
- Параметры:
-
namespaceURI— URI пространства имён узла, который требуется удалить. -
localName— локальное имя узла, который требуется удалить. - Возвращает:
- Удалённый из этой карты узел, если существует узел с таким локальным именем и URI пространства имён.
- Выбрасывает:
-
DOMException— NOT_FOUND_ERR: возникает, если в этой карте нет узла с указаннымиnamespaceURIиlocalName.
NO_MODIFICATION_ALLOWED_ERR: возникает, если эта карта доступна только для чтения.
NOT_SUPPORTED_ERR: может возникнуть, если реализация не поддерживает функцию «XML», а язык, предоставляемый объектом Document, не поддерживает пространства имён XML (например, [HTML 4.01]). - Начиная с версии:
- 1.4, DOM Level 2
© 1993, 2025, Oracle and/or its affiliates. All rights reserved.
Documentation extracted from Debian's OpenJDK Development Kit package.
Licensed under the GNU General Public License, version 2, with the Classpath Exception.
Various third party code in OpenJDK is licensed under different licenses (see Debian package).
Java and OpenJDK are trademarks or registered trademarks of Oracle and/or its affiliates.
https://docs.oracle.com/en/java/javase/25/docs/api/java.xml/org/w3c/dom/NamedNodeMap.html