我在JavaScript中使用此代码:
var JSON;
JSON||(JSON={});
你能说出这段代码在做什么吗?
答案 0 :(得分:4)
var JSON
声明了一个全局(或其他范围)变量。
JSON||(JSON={});
首先检查JSON是否计算为true或false,如果为false,则将JSON设置为空对象;
答案 1 :(得分:2)
在这种背景下,这是毫无意义的,
var JSON;
创建一个名为JSON
第二部分,
JSON||(JSON={});
相当于
if(!JSON){
JSON = {};
}
这可以全部跳过并写为
var JSON = {};
答案 2 :(得分:1)
它定义了一个名为JSON
的变量,然后使用||
运算符的短路特性为该变量分配一个空对象,除非该变量具有真值。
答案 3 :(得分:0)
它只是使JSON
成为一个空对象。
答案 4 :(得分:0)
我认为这说:如果var'JSON'为null,则创建一个空白的javascript obect。
答案 5 :(得分:0)
此代码执行以下操作:
JSON
(JSON === undefined
){}
是假名值,则将空对象(JSON
)分配给JSON
。虚假值包括:null
,undefined
,""
(空字符串),0
,NaN
,false
。
JSON
已通过var JSON
声明,因此设置为undefined
,这意味着操作JSON||...
的右侧将是执行。换句话说,所有代码都是:
var JSON = {};