【发布时间】:2012-10-27 10:58:53
【问题描述】:
我目前正在研究 Three.js,并且在主源文件的顶部遇到了这个变量声明:
var THREE = THREE || { REVISION: '52' };
我只是想知道 OR (||) 在那里做了什么 - 它的功能是什么?
【问题讨论】:
标签: javascript
我目前正在研究 Three.js,并且在主源文件的顶部遇到了这个变量声明:
var THREE = THREE || { REVISION: '52' };
我只是想知道 OR (||) 在那里做了什么 - 它的功能是什么?
【问题讨论】:
标签: javascript
以上意思是:
如果THREE 的值为true,则将THREE 的值赋给THREE 变量,否则将其初始化为对象{ REVISION: '52' }。
【讨论】:
THREE 的计算结果是否为真,而不是它是否已定义。
在代码中,就像说:
var THREE;
if (THREE) {
THREE = { REVISION: '52' };
}
else {
THREE = THREE;
}
或者:
var THREE = (THREE) ? { REVISION: '52' } : THREE;
【讨论】:
THREE 是0 怎么办?
惰性实例化。如果变量已声明,则为其赋值。
【讨论】: