Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Объекты в массиве. (https://javascript.ru/forum/misc/8949-obekty-v-massive.html)

delias 21.04.2010 22:09

Объекты в массиве.
 
Что-то не получается что задумал. Подскажите, как правильно нужно работать с объектами в массиве.
Например!
есть массив:
var allrooms=[];

Есть объект:
var o = {
room: 0,
frame: 0,
frame1: 0,
frame2: 0,
frame3: 0,
frame4: 0,
frame5: 0
}

Сохраняю в массиве объекты:
allrooms[1] = o
allrooms[2] = o

Далее присваиваю значения этим объектам:
allrooms[1].room = 2
allrooms[2].room = 5

Теперь вывожу на экран значение allrooms[1].room:
alert(allrooms[1].room)
Ответ 5.

Почему не 2?? Я ведь сохранил в allrooms[1] двойку, но по факту сохраняется последнее число - пять.

Получается что в массивы нельзя сохранять объекты. Как тогда быть - подскажите другой путь?
Благодарю за помощь

Octane 21.04.2010 22:22

Потому что allrooms[1] и allrooms[2] ссылаются на один и тот же объект "o". Это основы, учите теорию.

delias 21.04.2010 22:28

ясно. спасибо


Часовой пояс GMT +3, время: 21:54.