经常看到如下的这样的js的语法,我很费解啊,这是是嘛意思?
小弟只是个小菜鸟,各位大神不要见笑啊。(function() {})();Ps.不过不得不说,我对这种弱类型语言实在没什么好感。

解决方案 »

  1.   

    补充一个 
    var _gaq = _gaq || [];  介个又是嘛意思,谢谢!
      

  2.   

    (function() {})();
    就是声明了一个匿名函数,然后直接执行。
    等同于:
    var test = function(){};
    test();
    ~~~~~~~~~~~~~~~~~~~~~~~~·
    var _gaq = _gaq || []; 
    的意思是:
    如果_gaq为空,则给_gaq赋值[](这是空数组)。
    如果_gaq不空,则被_gaq赋值_gaq,也就是自身不变。
    等同于:
    //伪代码
    if (_gaq == null){
       _gaq = [];
    }
      

  3.   

    说明一下.这里应该不能说是为空.因为空值和null值有本质的区别的.
    如果一个对象或者元素存在,但它的值是""  那就是空
    但如果对象不存在,那就是null了.