(1)
var a=new Array(1,2);
var b=a;
a.push(3);
alert(a!=b);
结果为false,说明a,b指向的是同一个数组对象。a.push(3)只是修改了对象的内容,指向对象内容的地址并未变化,而且ab相同。
(2)
var a=new Array(1,2);
var b=a;
var a=new Array(3,4);
alert(a!=b);
结果为ture,这里a的行为是重置了自己的引用,并非修改那么简单,所以a已经不是指向以前那个对象了,而b还是指向老对象,于是ab不相同。