This page was translated from English by the community.Learn more and join the MDN Web Docs community.
HTMLCollection
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since июль 2015 г..
ИнтерфейсHTMLCollection является обобщённой коллекцией (объектом, ведущим себя подобно массиву) элементов (в порядке упоминания в документе) и предоставляет методы и свойства для получения хранящихся в нём элементов.
Примечание:Интерфейс названHTMLCollection по историческим причинам. До стандарта DOM4 коллекции, реализующие данный интерфейс, использовались только для хранения HTML-элементов.
HTMLCollection, хранящая элементы DOM, является динамической. При изменении документа она моментально отражает все произведённые изменения.
In this article
Свойства
HTMLCollection.lengthТолько для чтенияВозвращает количество элементов в коллекции.
Методы
HTMLCollection.item()Возвращает узел с порядковым номером
index; отсчёт ведётся от нуля. Возвращаетnull, еслиindexвыходит за границы допустимого диапазона.HTMLCollection.namedItem()Возвращает узел, идентификатор или имя (в целях совместимости) которого совпадает со строкой, переданной в аргументе
name. Соответствие имени проверяется в самую последнюю очередь, только для HTML-элементов и только для тех из них, которые поддерживают свойствоname. Возвращаетnull, если искомый элемент отсутствует.
Использование в JavaScript
HTMLCollection предоставляет своё содержимое как собственные свойства, доступные как по имени, так и по индексу (как в массиве). Это связано с тем, что идентификаторы HTML-элементов, содержащие точки и двоеточие (допустимо в HTML5), адресуемы исключительно через синтаксис доступа к массиву. Однако, при числовых идентификаторах невозможно определить, производится ли запрос по индексу или по идентификатору, неявно приведённому к числу.
Пусть в документе присутствует элемент<form> сid, равным «myForm»:
var elem1, elem2;// document.forms имеет тип HTMLCollectionelem1 = document.forms[0];elem2 = document.forms.item(0);alert(elem1 === elem2); // выводит "true"elem1 = document.forms.myForm;elem2 = document.forms.namedItem("myForm");alert(elem1 === elem2); // выводит "true"elem1 = document.forms["named.item.with.periods"];Спецификации
| Specification |
|---|
| DOM> # interface-htmlcollection> |