2
respostas

Utilização do for..in no lugar de for..of com o Object.entries()

const relatorio = {
temperatura: 100,
vibracao: 15,
pressao: 67,
nivelRuido: 20
}

// console.log("Categorias avaliadas: ", Object.keys(relatorio)) // ou então:
console.log(Categorias avaliadas: ${Object.keys(relatorio).join(", ")})
// console.log("Valores registrados: ", Object.values(relatorio)) // ou então:
console.log(Valores registrados: ${Object.values(relatorio).join(", ")})

console.log("Detalhamento:\n")

for (const chave in relatorio) {
const status = relatorio[chave] > 50 ? '(alerta)' : '(ok)'
console.log(${chave}: ${relatorio[chave]} ${status})
}

console.log("\n")

2 respostas

Oi, Alexandre! Como vai?
Agradeço por compartilhar seu código com a comunidade Alura.

Parabéns pelo uso consistente do for..in para percorrer o objeto e aplicar a validação de status, deixando o detalhamento claro e fácil de acompanhar. A separação entre categorias, valores e o alerta condicional deixou a leitura bem organizada.
Uma dica interessante para o futuro é usar Object.entries() junto com for..of, o que facilita acessar chave e valor ao mesmo tempo. Veja este exemplo:


const relatorio = {
  temperatura: 100,
  vibracao: 15,
  pressao: 67,
  nivelRuido: 20
};

for (const [chave, valor] of Object.entries(relatorio)) {
  const status = valor > 50 ? '(alerta)' : '(ok)';
  console.log(chave + ': ' + valor + ' ' + status);
}

Esse código percorre cada par chave e valor do objeto, avalia a condição e exibe o resultado de forma direta.

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

Boa noite Rafaela, obrigado pelo retorno. Realmente, a utilização de Object.entries() para este caso vai tornar o código mais legível e compreensível, e de fácil manutenibilidade. Agradeço pela dica.