Executando verificação de segurança...
1

Só um detalhe: como neste caso vc está criando um novo array, no qual cada elemento é o resultado do processamento do respectivo elemento no array original, então acredito que map seria o mais adequado, afinal ele é feito pra isso (para cada elemento do array, faz algo e retorna outro array com os resultados). Ou então o for "tradicional" mesmo (ou for..of, que pessoalmente tenho preferido quando não preciso dos índices, somente dos valores).

Se bem que os exemplos não são equivalentes: no map vc usa o índice do elemento como key, nos outros usa propriedades do objeto, no for..in vc itera por todas as propriedades de um único usuário (em vez de ter um array de usuários), e no for..of o próprio nome é usado como key. Mas enfim...


Lembrando também que existem diferenças sutis entre o for "tradicional", for..in e for..of - veja aqui e aqui. Em muitos casos pode não fazer diferença, mas é importante saber esses detalhes para não ser pego de surpresa em determinadas situações.


Quanto a usar reduce para somar os números, tenho minhas ressalvas. Eu acho que nesse caso é um canhão pra matar mosca, e ainda prefiro um loop simples. reduce tem seus usos, claro, mas percebo um certo abuso dele. Mas pelo jeito sou exceção, parece que "o mercado" pensa diferente...

Carregando publicação patrocinada...
1

muito boa observação! o intuito do post foi mesmo mostrar varias formas de fazer a mesma coisa e mostrar que não só tem uma forma de fazer algo, o desafio foi mais para quem nunca usou ter uma noção que o método existe e em desafios para vagas normalmente ajuda muito saber.