我在javascript应用程序中找到了下面的代码行。
var auth = parent.auth = parent.auth || {};
我知道现有的Object父对象是用auth Object扩展的,但我不明白parent.auth || {}
在这里做了什么。
答案 0 :(得分:6)
parent.auth || {}
表示如果parent.auth
未定义,在布尔值情况下为null或false,则将初始化并分配新的空对象。
或者您可以理解为:
var auth;
if(parent.auth){
auth=parent.auth;
} else {
auth={};
}
答案 1 :(得分:3)
这意味着如果parent.auth
的值是假的(false,0,null,undefied等),则将值{}
(空对象)赋给变量auth
答案 2 :(得分:0)
||是或者,如果parent.auth未定义,则代码返回一个空对象。
像检查null一样,然后创建一个新对象,如果为null(来自java / c#)。