Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/475.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
什么';变量variableName=variableName | |{}的含义; 我是C++背景下的JavaScript新手。我总是看到这样的代码 var variableName = variableName || {};_Javascript - Fatal编程技术网

什么';变量variableName=variableName | |{}的含义; 我是C++背景下的JavaScript新手。我总是看到这样的代码 var variableName = variableName || {};

什么';变量variableName=variableName | |{}的含义; 我是C++背景下的JavaScript新手。我总是看到这样的代码 var variableName = variableName || {};,javascript,Javascript,我觉得很奇怪。有人能解释一下代码的意思吗?非常感谢。这意味着,如果设置了variableName,则variableName应保持该值。否则,如果未设置,则应将其变为对象(在本例中为空对象)。这意味着如果未设置该变量,则将其变为新的空对象,如果已设置,则使用该变量的值。它等于代码: var variableName; if(!variableName){ variableName = {}; } var a = a || {}; // {} var b = {"key":"value"

我觉得很奇怪。有人能解释一下代码的意思吗?非常感谢。

这意味着,如果设置了
variableName
,则
variableName
应保持该值。否则,如果未设置,则应将其变为对象(在本例中为空对象)。

这意味着如果未设置该变量,则将其变为新的空对象,如果已设置,则使用该变量的值。它等于代码:

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
}

你问的是如何工作的。不,它和你展示的不一样。考虑<代码> var x =“”;var x=x |{}@IngoBürk:您是否尝试过
var x=”“;如果(!x)x={}?据我所知,它是等效的。Ingo,谢谢你的评论,我已经相应地修改了我的代码。