Primeiramente, muito obrigado pelo seu comentário! É bom como um aspirante a programador ter veteranos como você fazendo críticas e dando dicas, de verdade.
Tá, JavaScript é o que então?
Não sei se compreendi totalmente a diferença entre uma linguagem compilada e interpretada, mas concluí que, quando compilada, o processo de compilação é explícito, e quando interpretada, esse processo torna-se menos visível, porém ambas passam por uma compilação. Ainda não lí os artigos que você anexou, então quando ler talvez minha conclusão seja diferente. Aguarde que retornarei sobre quando tiver mais conhecimento.
Sobre o código
Compreendi agora o funcionamento das variáveis! Realmente, não faz sentido guardar na memória um resultado que vem da invocação da função se não for necessário. Em um caso em que eu devesse guardar a notada de cada aluno faria sentido, porém não é necessário no caso de apenas calcular uma média e imprimí-la. O for of realmente é muito mais funcional nessa situação!
Enfim, obrigado por comentar, está sendo de grande ajuda! Conto com o seu apoio, se possível, em minhas próximas postagens!