Solucionado (ver solução)
Solucionado
(ver solução)
2
respostas

TypeError: object is not iterable

Não entendi porque o código abaixo gerou erro. Alguém poderia me ajudar?


const cliente1 = {
      nome: "André",
      cpf: "12312312312",
      dependentes: [{
        nome: "Sara",
        parentesco: "filha",
        dataNasc: "20/03/2011"
       },
       {
        nome: "Samia",
        parentesco: "filha",
        dataNasc: "04/01/2014"
       }],
    }
    const cliente2= {
      nome: "Juliana",
      cpf: "56767867867",
      dependentes: [{
        nome: "Sophia",
        parentesco: "filha",
        dataNasc: "30/08/2020"
       }],
    }

let listaUnida=[...cliente1,... cliente2];

console.log(listaUnida);

O erro foi o seguinte:



H:\Dev\JavaScript\Objetos\teste.js:25
let listaUnida=[...cliente1,... cliente2];
               ^

TypeError: object is not iterable (cannot read property Symbol(Symbol.iterator))
    at Object.<anonymous> (H:\Dev\JavaScript\Objetos\teste.js:25:16)
←[90m    at Module._compile (internal/modules/cjs/loader.js:1118:30)←[39m
←[90m    at Object.Module._extensions..js (internal/modules/cjs/loader.js:1138:10)←[39m
←[90m    at Module.load (internal/modules/cjs/loader.js:982:32)←[39m
←[90m    at Function.Module._load (internal/modules/cjs/loader.js:875:14)←[39m
←[90m    at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)←[39m
←[90m    at internal/main/run_main_module.js:17:47←[39m
2 respostas
solução!

Boa tarde Renata, tudo certo?

Você encontrou esse problema pois tentou utilizar o spread operator em um objeto ao invés de um array.

A operação ...array espalha um array para passar cada posição como um parâmetro. Sendo assim, nas variáveis cliente1 e cliente2 temos o array dentro da propriedade dependentes. Então podemos fazer o acesso assim:

let listaUnida=[...cliente1.dependentes,... cliente2.dependentes];

Espero ter ajudado. Bons estudos!

Oi João, Bom Dia!

Muito obrigada! Ajudou demais.

Quer mergulhar em tecnologia e aprendizagem?

Receba a newsletter que o nosso CEO escreve pessoalmente, com insights do mercado de trabalho, ciência e desenvolvimento de software