Влияние размещения функции влияет на производительность закрытий в пределах области видимости? Если да, то где оптимальное место для размещения этих функций? Если нет, подразумевается ли ассоциация закрытием достаточно оснований для логического размещения функции в другом месте?Закрытие и назначение функций javascript
Например, если Foo не зависит от значения localState, делает тот факт, что localState доступен из Foo иметь последствия как для обув «ы времени выполнения, использование памяти, и т.д.?
(function(){
var localState;
function foo(){
// code
}
function bar(){
// code
return localState;
}
})();
Другими словами, будет ли это лучший выбор, и если да, то почему?
(function(){
function foo(){
// code
}
var localState;
function bar(){
// code
return localState;
}
})();
Darius Bacon предложил below, что два образца выше, являются идентичными, так как localState могут быть доступны в любом месте внутри блока. Однако пример ниже, где foo определяется вне блока, может быть другим случаем. Как вы думаете?
function foo(){
// code
}
(function(){
var localState;
function bar(){
// code
foo();
return localState;
}
})();
Вы правы! Я попытался предположить некоторое исполнение с комментариями «// code», но, видимо, было не очень понятно. Спасибо за Ваш ответ. – brad 2008-10-28 17:24:07