Студопедия.Орг Главная | Случайная страница | Контакты | Мы поможем в написании вашей работы!  
 

Коллекции. Коллекция - это структура данных JavaScript, похожая на массив



Коллекция - это структура данных JavaScript, похожая на массив. Отличие коллекции от массивов заключается в том, что массивы программист создает сам в коде программы и заполняет их данными; коллекции же создаются браузером и "населяются" объектами, связанными с элементами Web-страницы. Коллекцию можно рассматривать как другой, зачастую более удобный способ доступа к объектам Web-страницы.

Например, если на странице имеются формы с именами f, g5 и h32, то у объекта document есть соответствующие свойства-объекты document.f, document.g5 и т.д. Но кроме того, у объекта document есть свойство forms, являющееся коллекцией (массивом) всех форм, и значит, к тем же самым объектам форм можно обратиться как document.forms[0],document.forms[1] и т.д. Это бывает удобным, когда необходимо выполнить какие-то действия со всеми объектами форм на данной странице. Указывая свойства того или иного объекта, мы будем обычно коллекции писать со скобками: forms[],images[], frames [], чтобы подчеркнуть, что это не обычные свойства, а коллекции.

Нумеруются элементы коллекции, начиная с нуля, в порядке их появления в исходном HTML-файле. Доступ к элементам коллекций осуществляется либо по индексу (в круглых или квадратных скобках), либо по имени (тоже в круглых или квадратных скобках, либо через точку), например:

window.document.forms[4] // 5-я форма на страницеwindow.document.forms(4) // равносильно предыдущему window.document.forms['mf'] // форма с именем 'mf'window.document.forms('mf') // равносильно предыдущему window.document.forms.mf // равносильно предыдущемуwindow.document.mf // равносильно предыдущему

Способы в 3-4 строчках удобны, когда имя элемента коллекции хранится в качестве значения переменной. Например, если мы задали var w="mf", то мы можем обратиться к форме с именем " mf " как window.document.forms[w]. Именно так мы поступили выше в разделе про оператор for...in, когда выписывали список всех свойств объекта document.

Как и у обычных массивов, у коллекций есть свойство length, которое позволяет узнать количество элементов в коллекции. Например, document.images. length.

Перечислим основные коллекции в объектной модели документа.

Таблица 3.1. Коллекции в объектной модели документа
Коллекция Описание
window. frames [] Все фреймы - т.е. объекты, отвечающие контейнерам < FRAME >
document.all[] Все объекты, отвечающие контейнерам внутри контейнера <BODY>
document. anchors [] Все якоря - т.е. объекты, отвечающие контейнерам <A>
document. applets [] Все апплеты - т.е. объекты, отвечающие контейнерам < APPLET >
document.embeds[] Все вложения - т.е. объекты, отвечающие контейнерам <EMBED>
document.forms[] Все формы - т.е. объекты, отвечающие контейнерам <FORM>
document.images[] Все картинки - т.е. объекты, отвечающие контейнерам < IMG >
document.links[] Все ссылки - т.е. объекты, отвечающие контейнерам <A HREF ="..."> и < AREA HREF ="...">
document.f. elements [] Все элементы формы с именем f - т.е. объекты, отвечающие контейнерам <INPUT> и<SELECT>
document.f.s.options[] Все опции (контейнеры <OPTION>) в контейнере <SELECT NAME=s> в форме <FORM NAME=f>
navigator. mimeTypes[] Все типы MIME, поддерживаемые браузером (список см. на сайте IANA)
function_name. arguments [] Все аргументы, переданные функции function_name() при вызове




Дата публикования: 2015-01-24; Прочитано: 351 | Нарушение авторского права страницы | Мы поможем в написании вашей работы!



studopedia.org - Студопедия.Орг - 2014-2025 год. Студопедия не является автором материалов, которые размещены. Но предоставляет возможность бесплатного использования (0.158 с)...