DEV Community

Cristian Fernando
Cristian Fernando

Posted on

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

Explica este código JavaScript

Dificultad: Intermedio

const dup = arr => Array.isArray(arr) && arr.map((item) => item * 2);

const [dos, , seis, ...resto] = dup([1,2,3,4,5]);
console.log(dos, seis, resto);
Enter fullscreen mode Exit fullscreen mode

A. 2, 6, [undefined, undefined]
B. 2, 6, [8, 10]
C. 2, 6, [4, 5]
D. SyntaxError

Respuesta en el primer comentario.


Top comments (2)

Collapse
 
duxtech profile image
Cristian Fernando

Respuesta:
B. 2, 6, [8, 10]

La desestructuración de arreglos permite extraer los valores en variables no solo de arreglos literales, también es posible pasarle una función siempre y cuando esta regrese un arreglo.
En el ejemplo la función dup usa el método map que simpre regresa un nuevo arreglo.
Como solo necesitamos los 3 primeros elementos, usamos el spread operator para almacenar las variables que no necesitamos extraer e ignoramos un valor con la sintaxis de ,

Collapse
 
devfranpr profile image
DevFranPR • Edited

Me flipa como al dejar el tercer valor con , , manda el producto de dos al abismo sin decir nada al respecto.