【问题标题】:What does this Javascript line do? [duplicate]这个 Javascript 行是做什么的? [复制]
【发布时间】:2011-04-13 02:25:14
【问题描述】:

可能重复:
What is “var _gaq = _gaq || []; ” for ?

var _gaq = _gaq || [];

我不确定这条线在做什么?谁能给我解释一下?

【问题讨论】:

标签: javascript google-analytics


【解决方案1】:

这类似于做

var _gaq = _gaq ? : _gaq : [];

表示如果设置了_gaq,则设置为_gaq,否则默认为新的空数组。

  • var 表示它是本地范围
  • _gaq 是变量名
  • || 表示或

意思是如果_gaq 不存在,则将其设置为一个新数组,这就是[] 的含义。

【讨论】:

  • @thephpdeveloper 你打败了我。
【解决方案2】:

它声明了一个名为_gaq 的变量。如果该变量已经定义,并且是一个 truthy 值,那么该行等同于编写

var _gaq = _gaq;

如果_gaq 是一个falsy 值,那么新声明的变量是一个空数组。

关于 JavaScript 中真假的一些参考:

【讨论】:

    【解决方案3】:

    它检查是否定义了 _gaq,如果没有将数组对象分配给 _gaq。

    相当于

    if(!_gaq){
     var _gaq = [];
    }
    

    【讨论】:

    • 那一点也不相似,那是声明一个全局变量
    猜你喜欢
    • 1970-01-01
    • 2012-05-22
    • 2015-03-21
    • 1970-01-01
    • 2016-04-06
    • 2019-10-20
    • 2011-02-04
    • 2018-10-24
    • 1970-01-01
    相关资源
    最近更新 更多