Clone object typescript

Postado em por Wolmir Cezer Garbin em Typescript | 248 Visualizações
Última atualização em:

Se precisa clonar um objeto em TypeScript, este post pode te ajudar.

Em alguns casos, vai precisar clonar objetos para que ao serem alterados, a alteração não reflita na referência. Em outras palavras se estiver editando uma variável em uma lista e alterar o objeto que faz referencia com o mostrado na lista ao alterar qualquer atributo o mesmo será mostrado.

Para evitar isso, precisa clonar o objeto em typescript, veja as formas que pode utilizar:

Sua primeira opção é utilizar o Object do ES6, desta forma terá duas maneiras de fazer, veja:

// Para objeto
Object.assign( this.newObject, objReferencia );
this.newObject = Object.create(objReferencia);
// Para lista
this.listaObjetos = Array.from( this.oldListaObjetos );

Mas o typescript tem um facilitador para esta tarefa, veja:

// Para objeto
this.newObject = {...objReferencia};
// Para lista
this.listaObjetos = [...this.oldListaObjetos];

Note que o newObject é o objeto novo sem referência do objeto anterior e o objReferencia é o objeto que será clonado para o novo. Da mesma forma o objeto listaObjetos será um clone do objeto oldListaObjetos.

Qualquer dúvida deixe nos comentários!


Não esqueca de deixar suas dúvidas nos comentários e compartilhar este post.


Wolmir Cezer Garbin

Wolmir Cezer Garbin


Sou formado em Desenvolvimento de Sistemas para Internet pela faculdade Mater Dei e Pós graduado em Desenvolvimento de sistemas em Java pela UTFPR. Trabalho a mais de 9 anos com desenvolvimento em Java, Android e Web utilizando as principais tecnologias do mercado. Atuo como professor na faculdade Mater Dei, programador na Garbo Software e criador do Receitas de Código.

Ver mais

Code Conference

Esta é uma conferência de código realizada na cidade de Pato Branco para dissiminar tendências e informações sobre programação e novas tecnológias

Veja mais sobre o Code Conference

Publique seu post no Receitas de Código

Agora você pode publicar seu post no Receitas de Código e compartilhar seu conhecimento com muitas pessoas!

Quero publicar