Ver Mensaje Individual
  #1 (permalink)  
Antiguo 24/09/2008, 03:42
NachoeXr
 
Fecha de Ingreso: septiembre-2008
Mensajes: 2
Antigüedad: 15 años, 8 meses
Puntos: 0
Pregunta Error pasando un array por valor a una función

Este es el código de la función:
Código:
function test(n)
{
   alert(n);
   var a = n;
   a.shift();
   alert(n);
}
si ejecutamos:
Código:
test(Array(1,2));
saldrán dos alerts, el primero pone
Código:
1,2
pero el segundo pone
Código:
2
Lo cual quiere decir que "n" se ha modificado al modificar "a".

¿Los arrays siempre se copian por referencia? ¿Hay alguna forma de que no lo hagan? No entiendo como gestiona la memoria JavaScript.