DEV Community

Cristian Fernando
Cristian Fernando

Posted on

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

Explica este c贸digo JavaScript

const getName = (obj) => {
  obj.name ??= "Sin Nombre";
  return obj;
}
console.log(getName({}))
Enter fullscreen mode Exit fullscreen mode
  • A. undefined
  • B. {}
  • C. { name:"Sin Nombre" }
  • D. Ninguno de los anteriores

Respuesta en el primer comentario.


Discussion (1)

Collapse
duxtech profile image
Cristian Fernando Author

Respuesta:
C. { name:"Sin Nombre" }

El operador ??= se llama Logical Nullish Assignment es un operador de corto circuito moderno que consiste en ejecutar porciones de c贸digo si evaluamos una condici贸n como nullish, osea, como valor null o undefined.

Entonces, en el ejemplo, si obj.name evalua como nullish, ejecutamos "Sin Nombre".

Llamamos a la funci贸n getName pasandole un objeto vac铆o, entonces todas sus propiedades son undefined y por consecuencia nullish, por ello a obj.name se el asigna el valor "Sin Nombre" y retornamos ese objeto.