Estoy empezando con javascript y no entiendo por qué sale 3 veces 3 y no me sale 0,1,2..
Me lo podrían explicar?
const f = function() {
for (var i = 0; i<3 ; i++){
setTimeOut(
() => console.log(i),
1000)
}
}
f()
En cambio, en este otro si que aparece en orden 0,1,2..
const f = function ()
{for (var i=0; i<3; i++) {
((c) => {setTimeout(
() =>console.log(c),
5) })(i)
}
}
f()
Gracias de antemano!