function outer(){
var a, b, c;
function inner1(){
...
}
function inner2(){
...
}
inner1();
inner2();
...
}
Я хочу, чтобы глобальное пространство имен было чистым, поэтому я написал код выше. Внутренние функции используются только кодом внутри Outer. Но после этого я начинаю думать, что это вызовет проблему с памятью. Я не уверен, созданы ли внутренние функции заранее или созданы каждый раз, когда вызывается внешний()? И будут ли они причиной утечки памяти?Может ли этот javascript вызвать утечку памяти?
Может ли кто-нибудь помочь объяснить, что произойдет, когда вызывается external() и когда он возвращается? И, пожалуйста, напишите мне, если есть хорошие книги или статьи об управлении памятью javascript. Я всегда путаю такие проблемы. Благодарю.
Ну, если они экспортируются и используются, я бы не назвал это утечкой. – davin
@ davin - нет, и я тоже. Я действительно не обращался к вопросу об утечке памяти, просто вопрос о том, были ли внутренние функции созданы каждый раз при вызове 'external()'. – nrabinowitz