开发者

What does this Javascript line do? [duplicate]

开发者 https://www.devze.com 2023-02-24 00:17 出处:网络
This question already has answers here: Closed 11 ye开发者_运维问答ars ago. Possible Duplicate: What is “var _gaq = _gaq || []; ” for ?
This question already has answers here: Closed 11 ye开发者_运维问答ars ago.

Possible Duplicate:

What is “var _gaq = _gaq || []; ” for ?

var _gaq = _gaq || [];

I'm not sure what this line is doing? Can someone explain this to me?


This is similar to doing

var _gaq = _gaq ? : _gaq : [];

It means that if _gaq is set, it'll set it to _gaq, otherwise it will default to a new empty array.

  • var means it's local scope
  • _gaq is the name of the variable
  • || means or

It's saying that if _gaq doesn't already exist, set it to a new array which is what [] means.


It declares a variable named _gaq. If that variable was already defined, and is a truthy value, then the line is equivalent to writing

var _gaq = _gaq;

If _gaq is a falsy value, then the newly declare variable is an empty array.

Some reference on truthiness and falsiness in JavaScript:

  • http://11heavens.com/falsy-and-truthy-in-javascript
  • http://javascript.crockford.com/style2.html


It checks if _gaq is defined if not assigns an array object to _gaq.

its equivalent to

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

精彩评论

暂无评论...
验证码 换一张
取 消