Actualmente la mayor parte de mi trabajo está relacionado con el desarrollo de js.cuántas copias de la función interna se crearán
Sin embargo, de repente descubrí que estoy confundido con algunas preguntas.
Comprobar el código (añado un método de una clase personalizada):
MyCustomClass.prototype.fun=function(xx){
this.options={.....}
function innerFun01(){}
function innerFun02(){}
}
Ahora, lo utilizan.
var mcc=new MyCustomClass();
mcc.fun(xxxx);
var mcc2=new MyCustomClass();
mcc2.fun(xxxx);
Ahora, me pregunto cuántas copias de la función "innerFun01" y "innerFun02" se creará en la memoria?
Estoy realmente confundido.
¿Es esto una pérdida de memoria? alguna idea para cambiarlos? Pero no quiero definirlos fuera, ya que no quiero exponerlos. – hguser
No es realmente un desperdicio de memoria. Se crean instancias, pero luego se descartan después de que se ejecuta el método 'diversión'. El recolector de basura de JavaScript vendrá poco después y los recogerá y los arrojará. – Stephen
Joe Armstrong, la luminaria de Erlang, responde a tales preocupaciones sobre problemas con ese lenguaje instando a los desarrolladores a "escribir el código más bonito" que puedan. Escriba código que sea * algorítmicamente * sonido, y solo preocúpese por tales cosas en casos extremos (improbables). – Pointy