Не совсем так. При входе в цикл выполняется конструкция

Код AS3:
var i:uint = 0;
А она объявляет переменную в пределах области видимости функции Main(), не в теле цикла. Это все равно, как если бы вы написали

Код AS3:
var i:uint = 0;
for(i = 0; i <= 10; i++)
{
trace("i = ", i);
}
Так уж устроен компилятор.