O JavaScript é uma linguagem de programação multiparadigma, dinâmica e interpretada, amplamente utilizada tanto no lado do cliente quanto do lado do servidor.
Seu modelo de execução assíncrono e orientado a eventos, aliado a conceitos como closures, hoisting e o sistema de protótipos, exige do desenvolvedor uma compreensão aprofundada de seus mecanismos internos para evitar comportamentos inesperados.
Considere o seguinte trecho de código JavaScript:
function criarContadores() {
let contadores = [];
for (let i = 0; i < 3; i++) {
contadores.push(function () {
return i;
});
}
return contadores;
}
const resultado = criarContadores();
console.log(resultado[0](), resultado[1](), resultado[2]());
Sobre o código apresentado, considerando as especificações do ECMAScript 6 (ES6) e o comportamento padrão dos interpretadores JavaScript, assinale a afirmativa correta.
Provas
Questão presente nas seguintes provas