我是来自C ++背景的javascript新手。我总是看到像
这样的代码var variableName = variableName || {};
对我来说似乎很奇怪。有人可以解释一下代码的含义吗?非常感谢。
答案 0 :(得分:3)
这意味着如果该变量未设置,则使其成为新的空对象,如果已设置,则使用该变量的值。它等于代码:
var variableName;
if(!variableName){
variableName = {};
}
var a = a || {}; // {}
var b = {"key":"value"};
var b = b || {}; // {"key":"value"}
通常,它用于创建命名空间来组织代码。例如,
var myNameSpace = myNameSpace || {};
myNameSpace.print= function(msg) {
console.log("message is: "+msg);
}
myNameSpace.bar = function(){
//do some thing
}
答案 1 :(得分:2)
这意味着,如果设置了variableName
,则variableName
应该保留该值。否则,如果没有设置,它应该成为一个对象(在这种情况下是空的)。