关于运算符:javascript null条件表达式

javascript null conditional expression

本问题已经有最佳答案,请猛点这里访问。

Possible Duplicate:
null coalescing operator for javascript?

在C中,您可以这样做:

1
var obj = newObject ?? defaultObject;

也就是说,如果不为空,则将newObject分配给obj,否则分配defaultObject。我该如何用javascript编写它?


虽然它被认为是一个abusage,但您可以执行以下操作:

1
var obj = newObject || defaultObject;

注意,如果newObject有任何错误值(如0或空字符串),defaultObject将作为obj的值返回。考虑到这一点,最好使用三元运算符或标准if语句。

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