Объявление переменной в цикле или перед циклом в AS3? - PullRequest
2 голосов
/ 09 ноября 2010

Должен ли я объявить переменную _mcContainer перед циклом или нет?(увеличение производительности?)

for(var i:uint = _startIndex; i <= _endIndex; ++i){    
    var _mcContainer:MovieClip = _mcParent["i_" + _position];
}

или

var _mcContainer:MovieClip;
for(var i:uint = _startIndex; i <= _endIndex; ++i){
    _mcContainer = _mcParent["i_" + _position];
}

?

1 Ответ

6 голосов
/ 09 ноября 2010

Это не сложно проверить ...

... однако, согласно документации, это не должно иметь никакого значения, потому что объявления переменных в любом случае поднимаются в верхнюю часть блока метода.

С Документы :

Интересным следствием отсутствия области действия уровня блока является то, что вы можете читать или записывать переменную до того, как она будет объявлена, если она объявлена ​​до завершения функции. Это из-за техники, называемой hoisting, что означает, что компилятор перемещает все объявления переменных в начало функции.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...