Explica este código JavaScript
console.log(undefined || "0" || null || (undefined ?? 0))
A. 0
B. "0"
C. undefined
D. null
Respuesta en el primer comentario.
For further actions, you may consider blocking this person and/or reporting abuse
jdowns525 -
Ethan -
UponTheSky -
Dennis Persson -
Once suspended, duxtech will not be able to comment or publish posts until their suspension is removed.
Once unsuspended, duxtech will be able to comment and publish posts again.
Once unpublished, all posts by duxtech will become hidden and only accessible to themselves.
If duxtech is not suspended, they can still re-publish their posts from their dashboard.
Once unpublished, this post will become invisible to the public and only accessible to Cristian Fernando .
They can still re-publish the post if they are not suspended.
Thanks for keeping DEV Community safe. Here is what you can do to flag duxtech:
Unflagging duxtech will restore default visibility to their posts.
Top comments (1)
Respuesta:
B.
"0"
El operador de corto circuito OR (
||
) solo se ejecuta si el primer operando es falsy.El nullish coalescing operator (
??
) solo se ejecuta si el primer operando es nullish (null
oundefined
).Vamos paso por paso:
undefined || "0"
:undefined
evalua como falsy entonces tendriamos"0"
.Nos quedaria el siguiente código:
"0" || null
:"0"
no evalua como falsy entonces no se ejecuta el operador de corto circuito.Nos quedaria el siguiente código:
undefined ?? 0
: Operando tenemos como resultado0
por queundefined
es un valor nullish.Nos quedaria el siguiente código:
Finalmente
"0"
como cadena no es un valor falsy entonces no podemos ejecutar el operador de corto circuito dando como resultado final"0"
.