var BMapLib = window.BMapLib = BMapLib || {};
这种写法是什么意思??

解决方案 »

  1.   

    如果BMapLib转换成布尔类型为true时则返回BMapLib,否则返回新建的空对象
      

  2.   

    var BMapLib = window.BMapLib = BMapLib || {};
    如果在全局有没有 BMapLib 对象的话,初始化一个,如果有的话就沿用原有的。
    目的是建立全局对象,
    其实就是:
    var BMapLib;
    if(BMapLib){
       BMapLib = window.BMapLib = BMapLib;
    } else {
       BMapLib = window.BMapLib = BMapLib = {};
    }
      

  3.   

    说白了,就是给BMapLib赋值
    var BMapLib = window.BMapLib = BMapLib || {};
    相当于
    var BMapLib = window.BMapLib;  //如果全局有BMapLib那么把全局BMapLib的值 赋给 BMapLib,没有则是undefined
    if( BMapLib ){  // 把上面取到的BMapLib值转为 bool,做逻辑判断
    BMapLib = BMapLib;
    }else{
    BMapLib = {};  // 如果逻辑为假,那么 给BMapLib赋给空对象
    }