我在一本书中发现了以下示例:
// Create _callbacks object, unless it already exists
var calls = this._callbacks || (this._callbacks = {});
我简化了它,这样我就不必使用特殊的对象作用域:
var a = b || (b = "Hello!");
当定义了变量b时,它可以正常工作。当未定义变量b时,它会出现错误并抛出一个ReferenceError。
ReferenceError: b is not defined
我有做错任何事吗?谢谢!
b
并且实际上永远不会使用它。 另外,我认为对于如此简单的赋值语句来说,逗号是不必要的。 - Darkhoggb
,有什么必要在有条件地分配默认值呢? - Darkhogg