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.
For further actions, you may consider blocking this person and/or reporting abuse
We're a place where coders share, stay up-to-date and grow their careers.
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 valornull
oundefined
.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 sonundefined
y por consecuencianullish
, por ello aobj.name
se el asigna el valor"Sin Nombre"
y retornamos ese objeto.