Não funcionou. Não fiz outros testes. Acho estranho essa dificuldade para conseguir iterar entre as propriedades de um objeto.
On 11 abr, 11:44, Eric Tonussi <erictonu...@gmail.com> wrote: > Acredit que isso vai resolver seu problema: > > public function copyObject( o:Object ):void { > > var bytes:ByteArray = new ByteArray(); > bytes.writeObject( o ); > bytes.position = 0; > > var obj:Object = bytes.readObject(); > > for ( var p:String in obj ) { > > this[p] = o[p]; > > } > > } > > Abraços > > Em 11 de abril de 2011 11:26, Bruno Carneiro > <guimaraescarne...@gmail.com>escreveu: > > > > > > > > > Analisando o debug, notei que a iteração dentro do método copy não > > acontece. Ele apenas passa direto sem iterar pelas propriedades do > > objeto, por isso nenhuma cópia é feita. > > > Não entendo porque não está iterando pelas propriedades do objeto já > > que no link que referenciei o exemplo funciona de modo análogo. A > > única diferença é que no meu caso eu implemento o método em uma classe > > e depois uso invocando a partir de um objeto de outra classe que > > extende a classe que implementa o método. > > > On 11 abr, 10:59, Bruno Carneiro <guimaraescarne...@gmail.com> wrote: > > > > /** > > > * Copia o estado de um objeto > > > * @param Obejto que será copiado > > > */ > > > public function copyObject(o:Object):void > > > { > > > for ( var p:String in this ) > > > { > > > this[p] = o[p]; > > > } > > > > } > > > > Quando tento fazer a cípia via copy > > > > item.copyObject( tmp ); > > > > A variável item não perde sua referência mas também não tem suas > > > propriedades alteradas, nenhuma modificação é feita. > > > > Para criar a função copy me baseiei nessa páginahttp:// > > help.adobe.com/pt_BR/ActionScript/3.0_ProgrammingAS3/WS5b3ccc5... > > > -- > > Você recebeu esta mensagem porque está inscrito na lista "flexdev" > > Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com > > Para sair da lista, envie um email em branco para > > flexdev-unsubscr...@googlegroups.com > > Mais opções estão disponíveis emhttp://groups.google.com/group/flexdev -- Você recebeu esta mensagem porque está inscrito na lista "flexdev" Para enviar uma mensagem, envie um e-mail para flexdev@googlegroups.com Para sair da lista, envie um email em branco para flexdev-unsubscr...@googlegroups.com Mais opções estão disponíveis em http://groups.google.com/group/flexdev