“window.gapi = window.gapi || {};”是什么意思 意思?

Dan*_*lis 0 javascript syntax

我对这里的语法有点困惑。

window.foo = window.bar || {};
Run Code Online (Sandbox Code Playgroud)

有任何想法吗?我只是想更好地理解 javaScript。谢谢

Cᴏʀ*_*ᴏʀʏ 5

如果window.bar为 null 或未定义(还有:0""NaNfalse),window.foo则将设置为空对象 ( {}),否则为window.bar

||在这种情况下,逻辑 OR 运算符 ( ) 用作空合并运算符。它基本上是以下内容的简写:

window.foo = (window.bar != null ? window.bar : {});
Run Code Online (Sandbox Code Playgroud)

这篇文章更详细地解释了这种行为。