1
resposta

[Dúvida] Uso do método fromEntries() no lugar de entries()

Fui olhar a documentação para me esclarecer um pouco para conseguir resolver o exercício e acabei encontrando esse método que já me devolveu o o array de pares em um objeto organizado sem iterar cada item em um objeto. Esse formato também atendeu aos requisitos da questão ?

const obj = [
  ['nome', 'João'],
  ['idade', 30],
  ['cidade', 'Curitiba']
]

function montarObjeto() {
    novoObj = Object.fromEntries(obj);
    console.log(novoObj);
}

montarObjeto();
1 resposta

E aí, Sérgio! Tudo bem?

Agradeço por compartilhar sua dúvida no fórum.

Pelo que você explicou, ao consultar a documentação você encontrou o método Object.fromEntries() e percebeu que ele já transforma diretamente um array de pares chave-valor em um objeto, sem precisar iterar manualmente. E sua dúvida é se essa solução também atende aos requisitos da atividade.

A resposta é: sim, atende perfeitamente ao objetivo proposto.

Seu código:

const obj = [
  ['nome', 'João'],
  ['idade', 30],
  ['cidade', 'Curitiba']
];

function montarObjeto() {
    const novoObj = Object.fromEntries(obj);
    console.log(novoObj);
}

montarObjeto();

O método Object.fromEntries() do JavaScript foi criado justamente para isso: receber um iterável (como um array de pares [chave, valor]) e retornar um objeto montado automaticamente.

Ou seja, funcionalmente ele resolve exatamente o problema descrito no enunciado.

Agora, por que o instrutor utilizou for...of?

Porque o foco pedagógico da atividade é exercitar:

  • Desestruturação ([chave, valor])
  • Notação de colchetes (obj[chave] = valor)
  • Manipulação manual de objetos

Nesse caso, a proposta é entender o processo de construção do objeto passo a passo, não apenas chegar ao resultado final.

Um pequeno ajuste que deixaria sua função ainda mais alinhada ao enunciado seria receber o array como parâmetro e retornar o objeto:

function montarObjeto(arrPares) {
    return Object.fromEntries(arrPares);
}

Assim ela fica totalmente compatível com o que foi pedido.

Parabéns por ir além do conteúdo da aula e buscar na documentação — essa é uma postura excelente de desenvolvedor.

Conte com o fórum sempre que precisar.

Conte com o apoio da comunidade Alura na sua jornada. Abraços e bons estudos! ✨