Si tengo una función como estaJavascript recolección de basura función anónima
function do(callback) {
//do stuff
callback();
}
y luego me pase en una función anónima:
do(function() { //do something else });
hace que la función anónima Alguna vez se recoge durante la vida útil del ¿página? Si no, ¿cómo puedo ponerlo a disposición para GC?
¿Tengo que hacer esto?
var h = function() { //do something };
do(h);
delete h;
¿Tengo que preocuparme por esto? Estoy construyendo una aplicación web que tiene una larga vida útil, hace que muchas llamadas ajax conserven objetos por un tiempo y realmente no requieren una actualización de página para navegar. Así que estoy tratando de averiguar si podría caer en un monstruo de fuga de memoria.
para mí, que tienden a obtener la mayor cantidad de pérdidas de memoria de no quitar detectores de eventos a objetos que pensé que había eliminado. Hay otros mensajes de fuga de memoria relacionados con JS por aquí http://stackoverflow.com/questions/5028479/finding-memory-leaks-in-javascript-using-firebug También es posible que desee ver aquí http://stackoverflow.com/questions/864516/what-is-javascript-garbage-collection – mrk