Executando verificação de segurança...
Em resposta a [Não disponível]
5

Seguem algumas sugestões.


Coloque ponto-e-vírgula no final das linhas. Pode parecer "frescura", e sei que o JavaScript "aceita" o código sem ponto e vírgula e "funciona", e tem até muita gente que ensina a não usar. Mas isso evita algumas situações bizarras que podem ocorrer se você não usá-los, como essa e essa (veja mais sobre isso aqui).


Se uma variável só vai ser retornada e nada mais, não precisa dela, pode retornar direto:

function media(firstNote, secondNote) {
    return (firstNote + secondNote) / 2;
}

Outra forma de iterar pelos elementos é usando for..of:

for (const student of students) {
    const nota = media(student.firstNote, student.secondNote);
    if (nota < 7) {
        alert(`A média do(a) aluno(a) ${student.nome} é: ${nota}, Foi reprovado. Tente novamente`);
    } else {
        alert(`Aluno(a) ${student.nome} foi aprovado(a)! Média: ${nota}`);
    }
}

Ou ainda com desestruturação:

for (const { nome, firstNote, secondNote } of students) {
    const nota = media(firstNote, secondNote);
    if (nota < 7) {
        alert(`A média do(a) aluno(a) ${nome} é: ${nota}, Foi reprovado. Tente novamente`);
    } else {
        alert(`Aluno(a) ${nome} foi aprovado(a)! Média: ${nota}`);
    }
}

Se bem que neste caso a função é tão simples que sei lá se precisa mesmo dela. Poderia fazer o cálculo direto no loop:

for (const { nome, firstNote, secondNote } of students) {
    const media = (firstNote + secondNote) / 2; // não precisa da função, se o cálculo é tão simples
    if (media < 7) {
        alert(`A média do(a) aluno(a) ${nome} é: ${media}, Foi reprovado. Tente novamente`);
    } else {
        alert(`Aluno(a) ${nome} foi aprovado(a)! Média: ${media}`);
    }
}

Quanto à dica que deram para usar arrow function só porque o código fica "enxuto e moderno", eu diria que não é bem assim. Primeiro que código menor não é necessariamente melhor.

Segundo que optar por usar ou não arrow function vai muito além de "simplificar" o código ou deixá-lo mais curto. Na verdade, existem várias outras diferenças muito mais importantes, citadas nos links abaixo (inclusive, "deixar o código mais curto" eu acho o motivo menos importante de todos):

Links adicionais:

Carregando publicação patrocinada...
1