Explica este código JavaScript
Dificultad: Intermedio
const porReferencia = (arr) => {
arr[0] = 0;
return arr;
}
let arr = [1,2,3];
console.log(porReferencia(arr));
console.log(arr);
A. [0, 2, 3]
, [1, 2, 3]
B. [0, 2, 3]
, [0, 2, 3]
C. [1, 2, 3]
, [1, 2, 3]
D. [1, 2, 3]
, [0, 2, 3]
Respuesta en el primer comentario.
Top comments (1)
Respuesta:
B.
[0, 2, 3]
,[0, 2, 3]
Javascript manipula los arreglos y objetos por referencia, esto significa que siempre nos basamos no en el arreglo u objeto per se, sino en la posición de memoria donde se almacena.
Dentro de la función mutamos el arreglo por ello regresamos
[0, 2, 3]
, pero fuera de la función este cambio también se ve reflejado comprobando así que existe un nexo entre la variablearr
y el parámetroarr
.