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