DEV Community

Cristian Fernando
Cristian Fernando

Posted on

Paracetamol.js💊| #192: Explica este código JavaScript

Explica este código JavaScript

Dificultad: Básico

const x = [1,2,3];
const y = x.concat();
x.push(4)
console.log(y)
Enter fullscreen mode Exit fullscreen mode

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)
Enter fullscreen mode Exit fullscreen mode

Top comments (0)