$array=thinks.array=thinks.array || {};
为什么不直接写成$array=thinks.array || {};JavaScript

解决方案 »

  1.   

    下面那个   thinks.array没有被赋值
      

  2.   

    它是先给thinks.array赋值;
    让后再把thinks.array的值赋给$array的
    实际上是两步
      

  3.   

    总体来看的话
    $array=thinks.array=thinks.array || {};
    先判断thinks.array是否为空;
    如果为空的话
    thinks.array={};thinks.array=new Object();
    然后再给$array赋值thinks.array;
      

  4.   

    相当于
    thinks.array=thinks.array || {}; //保证thinks.array已经初始化。
    var $array=thinks.array;         //建立快捷方式
      

  5.   


    $array=thinks.array=thinks.array || {};
    =>
    if(!thinks.array){
         thinks.array = {};
    }
    $array=thinks.array;
    $array=thinks.array || {};
    =>
    if(!thinks.array){
         $array = {};
    }