不同的结果说明了啥?
        var a=new Array(1,2);        var b=a;        a.push(3);        alert(a!=b);
        结果为false
       
         (2)        var a=new Array(1,2);        var b=a;        var a=new Array(3,4);        alert(a!=b);
        结果为ture

解决方案 »

  1.   

    这很好理解吧:
    1)b=a,a与b指向同一个数组对象
    2)b=a,a与b指向同一个数组对象,a = new   Array(3,4); ,a又被赋值一个新数组,当然a !=b了
      

  2.   

    第一种:var b=a b始终指向a a.push(3); b也跟着push了3 也就是说始终保持着同一个引用  a一定等于b第二种: var   a=new   Array(1,2);   var   b=a;  //在这之前a还是等于b的   var   a=new   Array(3,4); //这里因为js是弱类型语言 允许声明2个同名的变量 但是后者会覆盖前者 
    //因为这里new了一次 给a重新分配了一块内存 其地址与第一个a一定是不一样的 所以a!=b
      

  3.   

    数组是引用类型, new一个就开了一块新的内存空间。 
      

  4.   

                    var   a=new   Array(1,2);                var   b=a;//b和a指向同一个数组                a.push(3);                alert(a!=b); 
                    var   a=new   Array(1,2);                var   b=a;//b和a指向同一个                var   a=new   Array(3,4);//a指向另一个,而b还指向原来那个                alert(a!=b);