答案 0 :(得分:3)
这类似于做
var _gaq = _gaq ? : _gaq : [];
这意味着如果设置了_gaq
,它会将其设置为_gaq
,否则它将默认为新的空数组。
var
表示它是本地范围_gaq
是变量的名称||
表示或它说如果_gaq
尚不存在,请将其设置为[]
意味着的新数组。
答案 1 :(得分:2)
它声明了一个名为_gaq
的变量。如果该变量已经定义,并且是 truthy 值,则该行等同于写入
var _gaq = _gaq;
如果_gaq
是 falsy 值,那么新声明的变量是一个空数组。
关于JavaScript中的真实性和虚假性的一些参考:
答案 2 :(得分:0)
如果没有为_gaq指定数组对象,它会检查是否定义了_gaq。
等同于
if(!_gaq){
var _gaq = [];
}