JavaScript 为不确定状态的对象定义了 var 简写



这是什么意思?

var ourObject = ourObject || {};

这里没有太多上下文,但这个成语经常出现在函数中:

function name (param) {
    param = param || 'default value';
    // now you can be sure that param has a non-null value
}

在回答"这是什么意思?"时,上面的代码等效于:

var ourObject;
if(scope.ourObject) {
    ourObject = scope.ourObject;
}
else {
    ourObject = {};
}

其中上面的范围是代码块的当前范围(默认情况下为 window )。

这意味着如果这个对象(ourObject)在当前范围内不存在,请创建它并将其分配给局部变量ourObject。它确保ourObject永远不会在当前范围内未定义。

最新更新