我正在学习javascript,今天我找到了这段代码:
window.Picture2 = window.Picture2 || {};
Run Code Online (Sandbox Code Playgroud)
我不明白|| {}; 有人可以帮我解释一下吗?Tks这么多:)
这是将默认值分配给全局变量的危险方法Picture2.
window.Picture2 = window.Picture2 || {};
Run Code Online (Sandbox Code Playgroud)
如果没有定义,它将初始化window.Picture2为新的Object {}.但是,由于这是对真实性的检查,Picture2如果它具有任何这些虚假值,也将被分配一个空对象:
// these are all falsy
0, NaN, null, '', undefined, false
Run Code Online (Sandbox Code Playgroud)
这可能不是所有这些情况下,期望的行为,特别是对0,NaN,false或''价值.
有一个ecmascript 6的提议添加一个真正检查的默认运算符,undefined而不是其他:
window.Picture2 ??= {};
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
258 次 |
| 最近记录: |