237 of 264 menu

Método Object.assign

O método Object.assign copia propriedades e valores do objeto de origem, retornando um novo objeto. No primeiro parâmetro do método definimos o objeto de destino, no qual copiamos, e no segundo - especificamos os objetos que precisam ser copiados.

Sintaxe

Object.assign(para onde copiar, objetos);

Exemplo

Vamos obter um novo objeto a partir do original:

let obj = {'a': 1, 'b': 2, 'c': 3}; let newObj = Object.assign({}, obj); console.log(newObj);

Resultado da execução do código:

{a: 1, b: 2, c: 3}

Exemplo

Agora vamos obter um novo objeto a partir de várias origens, listando-as no parâmetro separadas por vírgula:

let obj1 = {'a': 1, 'b': 2}; let obj2 = {'c': 3, 'd': 4}; let newObj = Object.assign({}, obj1, obj2); console.log(newObj);

Após a execução do código, veremos que dois objetos de origem se fundiram em um novo objeto:

{a: 1, b: 2, c: 3, d: 4}

Exemplo

O método Object.assign também pode ser usado para obter um novo array, pois um array, por seu tipo, também é um objeto. Vamos criar um novo array copiando os elementos do original:

let arr = [1, 2, 3, 4]; let newArr = Object.assign([], arr); console.log(newArr);

Resultado da execução do código:

[1, 2, 3, 4]

Exemplo

Ao usar o método Object.assign é preciso seguir a sintaxe cuidadosamente. Por exemplo, se não adicionarmos o objeto de destino no primeiro parâmetro, e deixarmos apenas o objeto a ser copiado, ele será retornado de volta:

let obj = {1:'a', 2: 'b', 3: 'c'}; let newObj = Object.assign(obj); console.log(newObj === obj);

Resultado da execução do código:

true

Veja também

  • método Object.keys,
    que retorna um array com as propriedades do objeto
  • método Object.values,
    que retorna um array com os valores do objeto
Português
AfrikaansAzərbaycanБългарскиবাংলাБеларускаяČeštinaDanskDeutschΕλληνικάEnglishEspañolEestiSuomiFrançaisहिन्दीMagyarՀայերենIndonesiaItaliano日本語ქართულიҚазақ한국어КыргызчаLietuviųLatviešuМакедонскиMelayuမြန်မာNederlandsNorskPolskiRomânăРусскийසිංහලSlovenčinaSlovenščinaShqipСрпскиSrpskiSvenskaKiswahiliТоҷикӣไทยTürkmenTürkçeЎзбекOʻzbekTiếng Việt
Nós usamos cookies para o funcionamento do site, análises e personalização. O processamento de dados é realizado de acordo com a Política de Privacidade.
aceitar todas configurar rejeitar