Búsqueda de sitios web

operadores - expresión condicional nula en JavaScript


Posible duplicado:
operador de fusión nula para javascript?

En C#, puedes hacer esto:

var obj = newObject ?? defaultObject;

Eso dice asignar newObject a obj si no es nulo, de lo contrario asignar defaultObject. ¿Cómo escribo esto en JavaScript?

Respuesta #1

Aunque se considera un abuso, puedes hacer lo siguiente:

var obj = newObject || defaultObject;

Tenga en cuenta que si newObject es de cualquier valor falsy (como 0 o una cadena vacía), defaultObject será devuelto como el valor de obj. Con esto en mente, puede ser preferible usar el operador ternario o una instrucción if estándar.

var obj = ( "undefined" === typeof defaultObject ) ? defaultObject : newObject ;