Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 25.06.2011, 22:24
Профессор
Отправить личное сообщение для Telnet Посмотреть профиль Найти все сообщения от Telnet
 
Регистрация: 21.02.2011
Сообщений: 160

Возможно передать объект НЕ по ссылке.
entite=new Object();
data=new Array();
	var l=tabs.length;
	for (var q=0;q<l;q++){
		entite.info=$("#"+q+"coord").text();
		entite.typeOfArea=($("a[id="+q+"headerlink]").attr('class')).slice(11);
		entite.shownumber=$("#"+q+"shownumber").prop("checked");
		entite.showchangearea=$("#"+q+"showchangearea").prop('checked');

		data.push(entite);
	}


data
[Object { info="129,17,158,13", typeOfArea="round", ещё...}, Object { info="129,17,158,13", typeOfArea="round", ещё...}]

0
Object { info="129,17,158,13", typeOfArea="round", ещё...}

info
"129,17,158,13"

showchangearea
true

shownumber
true

typeOfArea
"round"

1
Object { info="129,17,158,13", typeOfArea="round", ещё...}

info
"129,17,158,13"

showchangearea
true

shownumber
true

typeOfArea
"round"

Прощу прошения за беспорядочное предоставление результатов работы скрипта просто скопировал их FireBuga

Вообщем проблема как думаю и так видна,
Есть цикл, он формирует массив объектов, но так как объекты в Javascript передаются по ссылке, имеем на выходе массив с последними результатами создания объекта.
Как то можно этого избежать?
Или лучше все это запихать в обычный про нумерованный массив.
Ответить с цитированием
  #2 (permalink)  
Старый 25.06.2011, 22:45
Новичок на форуме
Отправить личное сообщение для Kolyaj Посмотреть профиль Найти все сообщения от Kolyaj
 
Регистрация: 19.02.2008
Сообщений: 9,177

Сообщение от Telnet
Возможно передать объект НЕ по ссылке.
Нет.
Ответить с цитированием
  #3 (permalink)  
Старый 26.06.2011, 02:08
sinistral
Посмотреть профиль Найти все сообщения от melky
 
Регистрация: 28.03.2011
Сообщений: 5,418

можно клонировать всё это. через for in. в массиве тоже через цикл.
Ответить с цитированием
  #4 (permalink)  
Старый 26.06.2011, 13:53
Профессор
Отправить личное сообщение для nikita.mmf Посмотреть профиль Найти все сообщения от nikita.mmf
 
Регистрация: 01.02.2010
Сообщений: 364

В jQuery можно клонировать объекты следующим образорм
var cloneObj = function( obj ){ return $.extend(true, {}, obj); }
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Подскажите как передать по ссылке команду для js Alexanderos jQuery 8 30.10.2010 04:31
Как передать значение по ссылке на другую страницу сайта Rollo Общие вопросы Javascript 7 18.10.2010 15:02
Как передать значие false ссылке Bogdan808 Javascript под браузер 2 28.08.2010 16:29
Не погу передать объект в IE с помощью this kibal4iw Элементы интерфейса 2 13.07.2010 18:34
bind: как передать функции указатель на объект trial jQuery 4 25.05.2010 01:35