Explica este código JavaScript
Dificultad: Básico
const x = [1,2,3];
const y = x.concat();
x.push(4)
console.log(y)
A. [1, 2, 3]
B. []
C. [4]
D. [1, 2, 3, 4]
Respuesta en el primer comentario.
Respuesta:
A. [1, 2, 3]
El método concat
es inmutable, por ende siempre regresará un nuevo arreglo como resultado y no modificará el existente.
En este caso, concat
no recibe ningún parámetro y esto conlleva a que y
sea una copia de x
, no de su referencia, sino de sus valores.
y
al ser una copia no se ve afectado por el push
que se le hace a x
.
Esta es una manera un poco rara de crear copias de arreglos, no es muy intuitiva y no la recomiendo usar, para llegar a lo mismo podríamos emplear el spread operator:
const x = [1,2,3];
const y = [...x];
x.push(4)
console.log(y)
Top comments (0)