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);
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)
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étodomap
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,
Me flipa como al dejar el tercer valor con , , manda el producto de dos al abismo sin decir nada al respecto.