Форум Flasher.ru
Ближайшие курсы в Школе RealTime
Список интенсивных курсов: [см.]  
  
Специальные предложения: [см.]  
  
 
Блоги Правила Справка Пользователи Календарь Сообщения за день
 

Вернуться   Форум Flasher.ru > Flash > ActionScript 3.0

Версия для печати  Отправить по электронной почте    « Предыдущая тема | Следующая тема »  
Опции темы Опции просмотра
 
Создать новую тему Ответ
Старый 08.07.2009, 20:41
FlashRabbit вне форума Посмотреть профиль Отправить личное сообщение для FlashRabbit Найти все сообщения от FlashRabbit
  № 1  
Ответить с цитированием
FlashRabbit
 
Аватар для FlashRabbit

Регистрация: Jul 2009
Сообщений: 93
По умолчанию Приравнивание объектов

Код AS3:
var prop:Object;
var prop2:Object;
 
prop = new Object();
prop2 = new Object();
 
prop.content = 1;
prop2 = prop;
 
trace(prop2.content); // выведет 1
prop.content = 0;
trace(prop2.content); // выведет 0
Как сделать так, чтобы при смене prop не менялся prop2 ?

Старый 08.07.2009, 20:46
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 2  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Код AS3:
var prop:Object;
var prop2:Object;
 
prop = new Object();
prop2 = new Object();
 
prop.content = 1;
var ba:ByteArray = new ByteArray ()
ba.writeObject(prop)
ba.position = 0;
prop2 = ba.readObject();
 
trace(prop2.content); // выведет 1
prop.content = 0;
trace(prop2.content, prop.content); // выведет 1 0
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 08.07.2009, 20:48
FlashRabbit вне форума Посмотреть профиль Отправить личное сообщение для FlashRabbit Найти все сообщения от FlashRabbit
  № 3  
Ответить с цитированием
FlashRabbit
 
Аватар для FlashRabbit

Регистрация: Jul 2009
Сообщений: 93
Спасибо.

Старый 21.07.2009, 13:33
IsupovS вне форума Посмотреть профиль Отправить личное сообщение для IsupovS Найти все сообщения от IsupovS
  № 4  
Ответить с цитированием
IsupovS

Регистрация: Oct 2007
Сообщений: 34
наверное вопрос в этот же топик...

Код AS3:
 
            private function someHandler(evt:Event):void
               {
 
                       var customObject:Object=clone(thingObject);
                       trace("cObject.depth : "+customObject.depth)  // cObject.depth : [object Object]
                       trace("tObject.depth : "+thingObject.depth)  //  tObject.depth : 1
 
 
                }
 
 
            private function clone(source:Object):Object
               {
		var copier:ByteArray=new ByteArray();
		copier.writeObject(source);
		copier.position=0;
		return (copier.readObject());
	   }
это значит что при клонировании объекта, свойство depth превратилось из Number в Object... остальные свойства остались прежними..
кто встречался с данной проблемой? и из-за чего это могло произойти?

Старый 21.07.2009, 13:42
iNils вне форума Посмотреть профиль Отправить личное сообщение для iNils Посетить домашнюю страницу iNils Найти все сообщения от iNils
  № 5  
Ответить с цитированием
iNils
Негуру
 
Аватар для iNils

администратор
Регистрация: Jan 2000
Адрес: Кёнигсберг in Moscow
Сообщений: 21,883
Записей в блоге: 7
Что есть thingObject?
__________________
(и)Нильс.ru | Плагины для FlashDevelop

Старый 21.07.2009, 13:49
IsupovS вне форума Посмотреть профиль Отправить личное сообщение для IsupovS Найти все сообщения от IsupovS
  № 6  
Ответить с цитированием
IsupovS

Регистрация: Oct 2007
Сообщений: 34
thingObject - некий объект имеющий ряд свойств(неважно каких), при клонировании объекта новый объект имеет те же свойства что и старый, но почему то одно из них, а именно depth становится Object.
это важно - Что есть thingObject?

Добавлено через 4 минуты
вот объект
Цитата:
{
elementsArray:elements,
library:wearXML.items.item.@library[itm],
id:wearXML.items.item.@id[itm],
depth:wearXML.@depth,
x:wearXML.items.item.@x[itm],
y:wearXML.items.item.@y[itm]
}


Последний раз редактировалось IsupovS; 21.07.2009 в 13:57.
Старый 21.07.2009, 14:04
iflamberg вне форума Посмотреть профиль Отправить личное сообщение для iflamberg Найти все сообщения от iflamberg
  № 7  
Ответить с цитированием
iflamberg
 
Аватар для iflamberg

Регистрация: Jan 2009
Сообщений: 1,651
clone () не может быть использовано на MovieClip или XML. Только на каких-то простых объектах без конструкторов, функций и т.п.

Старый 21.07.2009, 14:05
IsupovS вне форума Посмотреть профиль Отправить личное сообщение для IsupovS Найти все сообщения от IsupovS
  № 8  
Ответить с цитированием
IsupovS

Регистрация: Oct 2007
Сообщений: 34
вопрос решен..
Цитата:
{
elementsArray:elements,
library:wearXML.items.item.@library[itm],
id:Number(wearXML.items.item.@id[itm]),
depth:Number(wearXML.@depth),
x:Number(wearXML.items.item.@x[itm]),
y:Number(wearXML.items.item.@y[itm])
}
Цитата:
clone () не может быть использовано на MovieClip или XML. Только на каких-то простых объектах без конструкторов, функций и т.п.
- это простой объект содержащий number, string и array. решился приведением строк в Number()


Последний раз редактировалось IsupovS; 21.07.2009 в 14:10.
Создать новую тему Ответ Часовой пояс GMT +4, время: 16:42.
Быстрый переход
  « Предыдущая тема | Следующая тема »  

Ваши права в разделе
Вы не можете создавать новые темы
Вы не можете отвечать в темах
Вы не можете прикреплять вложения
Вы не можете редактировать свои сообщения

BB коды Вкл.
Смайлы Вкл.
[IMG] код Вкл.
HTML код Выкл.


 


Часовой пояс GMT +4, время: 16:42.


Copyright © 1999-2008 Flasher.ru. All rights reserved.
Работает на vBulletin®. Copyright ©2000 - 2026, Jelsoft Enterprises Ltd. Перевод: zCarot
Администрация сайта не несёт ответственности за любую предоставленную посетителями информацию. Подробнее см. Правила.