Oi Johnatan,
A sua dúvida é bem interessante e aponta para uma questão importante na programação: a legibilidade e a clareza do código.
A diferença entre os dois trechos que você apresentou é sutil, mas vale a pena discutir. No seu código, você faz a chamada de obterNumeroAleatorio(de, ate)
diretamente dentro do método push
, enquanto no código da instrutora Jaque, a chamada é atribuída a uma variável numero
antes de ser adicionada ao array.
Aqui estão algumas considerações sobre essa abordagem:
Legibilidade: A versão da Jaque pode ser considerada mais legível, especialmente para quem está revisando o código. Ter uma variável nomeada, mesmo que temporária, pode ajudar a entender o que está acontecendo, especialmente em situações mais complexas.
Depuração: Se você precisar depurar o seu código, ter a variável numero
facilita. Você pode inspecionar o valor dela antes de adicioná-la ao array, o que pode ser útil para entender o fluxo de dados.
Extensibilidade: Caso você queira adicionar lógica extra antes de armazenar o número (como validações ou transformações), ter uma variável intermediária facilita essa tarefa.
Exemplo para verificar se o número gerado é par antes de adicioná-lo ao array:
let sorteados = [];
for (let i = 0; i < quantidade;) {
let numero = obterNumeroAleatorio(de, ate);
if (numero % 2 === 0) { // verifica se o numero é par
sorteados.push(numero);
i++; // só incrementa se for par
}
}
alert(sorteados);
Ambas as abordagens são válidas, mas a escolha pode depender do contexto e do que você considera mais claro para você e para outros que possam ler seu código no futuro.
Portanto, enquanto o seu código funciona perfeitamente e é conciso, a abordagem da instrutora pode trazer benefícios em termos de clareza e manutenção.
Caso este post o tenha ajudado, por favor,
marcar como solucionado ☑️.
Bons Estudos! 🤓