пятница, 25 февраля 2011 г.

Обращение к элементам объекта как к элементам массива

Здравствуйте, сегодня поговорим о том, как можно обратится к элементам объекта кроме как стандартного варианта:

object = {
   myVar: 'myValue'
}

alert(object.myVar);

Но кроме этого варианта, можно еще и по другому обращаться.
К элементам объекта можно еще обращаться так же как и к элементам массива:

object = {
   myVar: 'myValue'
}

alert(object['myVar']);
Вот так :)

Для чего это может понадобится ?
Часто может быть когда к элементам страницы нужно обратится не зная заранее значение.
Вот пример:

<img name="name1" src="src1" /> <br />
<img name="name2" src="src2" /> <br />
<img name="name3" src="src3" /> <br />
<img name="name4" src="src4" /> <br />
<img name="name5" src="src5" /> <br />
К примеру нужно всем этим картинка изменить параметр src (предполагается что картинок может быть больше).  Мы можем сделать цикл и к имени добавлять цифры: 1, 2, 3, 4, 5 и т.д.

И вот для того что бы обратится к элементу мы и будем к объекту document обращаться как к массиву:

for(i=1;i<=5;i++) {
   name = 'name'+i;
   document[name].src= 'clear.png';
}
Вот так мы можем динамически генерировать имена, и потом к ним обращаться.
Так же про это и написано еще и в статье "Как вызвать функцию по имени или вызов функции используя объект window"


Ну вот примерно и все. Желаю удачи вам в разработке.

Комментариев нет:

Отправить комментарий