Потому что вне функции используешь

Код:
a = function () {
for (var i = 0; i < 10; i++) {
trace ("message");
}
};
a ();
trace (i);
trace ("-------------------------")
a = function () {
for (i = 0; i < 10; i++) {
trace ("message");
}
};
a ();
trace (i);