variables locales desde fuera

El?
14 de Febrero del 2010
Las variables locales parece que no "mueren" al terminar la funci贸n, y se pueden usar como "atributos" de una especie de "objeto-funci贸n", por ejemplo:


var setLocal, getLocal;
(function(){
var local = 0;
setLocal = function(valor){local=valor;};
getLocal = function(){return local;};
})();

alert(getLocal()); // muestra 0
setLocal(123);
alert(getLocal()); // muestra 123


Lo he probado bastante y parece que no falla nunca en ning煤n navegador y facilita el tratamiento de eventos y aumenta la compresi贸n (yuicompressor minimiza todas las locales), pero me pregunto si ser谩 seguro o simplemente funciona porque javascript use borrado perezoso (no eliminar, sino marcar como borrado/reemplazable) y por consiguiente dichas locales est谩n accesibles desde el exterior mientras no sea necesario su espacio para otras variables (pila bastante llena), otra opci贸n es que trate esas variables como objetos en java y al estar referenciadas desde el exterior no "mueran" nunca. 驴Que pasa realmente con esas variables?