i < 3
в for (var i = 0; i < 3; i++)
означает «продолжайте работу l oop, пока i < 3
истинно». Это не значит «магически поддерживать i < 3
true все время, независимо от того, что происходит с любыми переменными».
Ваш console.log(i)
находится за пределами l oop, поэтому, очевидно, у него не будет возможности бежать, пока i < 3
больше не соответствует действительности.