2010-06-16 11 views
5
function doIt(param) { 
    var localVar = param; 
    //do lots of stuff with localVar 
} 

function doIt(param) { 
    //do lots of stuff with param 
} 

¿Hay alguna diferencia en términos de eficiencia entre el código anterior?Variable local frente al parámetro

+0

Pruebe este sencillo [punto de referencia] (http://jsbin.com/uyani3/7/). Si encuentras una diferencia (obtengo resultados interesantes en Firefox y Opera), IMO será insignificante de todos modos. – CMS

Respuesta

5

No hay diferencia. Un parámetro es simplemente una variable local que se inicializa con el argumento pasado en el momento de invocación.

Sin embargo, si va a cambiar el valor de su variable, a menudo se considera una buena práctica dejar las variables de los parámetros inalteradas, simplemente por motivos de legibilidad y mantenimiento.

0

param variable ya es una variable local, por lo que la única diferencia entre esos dos fragmentos de código es que el primero crea una copia inútil de la variable param.

+1

Ni siquiera eso. Cualquier compilador decente debería deshacerse de las variables muertas intermedias (como param). – Karmastan

Cuestiones relacionadas