DEV Community

Cristian Fernando
Cristian Fernando

Posted on

Paracetamol.js馃拪| #112: Explica este c贸digo JavaScript

Explica este c贸digo JavaScript

Dificultad: Avanzado

const f = (arr=[]) => {
  return arr.map((item) => {
    return (item * 2 ?? item + 1)
  })
}

console.log(f())
console.log(f([1,2,3]))
console.log(f([1,2,0]))
Enter fullscreen mode Exit fullscreen mode

A. TypeError, [ 2,4,6 ], [ 2,4,0 ]
B. [], [ 2,4,6 ], [ 2,4,0 ]
C. SyntaxError, [ 2,4,0 ], [ 2,4,0 ]
D. Ninguna de las anteriores.

Respuesta en el primer comentario.


Discussion (1)

Collapse
duxtech profile image
Cristian Fernando Author

Respuesta:
B. [], [ 2,4,6 ], [ 2,4,0 ]

  • La funci贸n tiene configurada un par谩metro por defecto en caso de que la llamemos sin par谩metros.

  • El nullish coalescing operator solo se ejecuta si manipulamos valores null o undefined y como no es el caso en ninguno de los ejemplos la expresi贸n item + 1 no llega a ejecutarse nunca.

  • El 煤ltimo ejemplo puede ser un poco "trampa" por que tenemos un valor 0, solo debemos recordar que un valor falsy no es lo mismo que un valor nullish.