1 var arr1=[1,2,3,4];//數組1被建立 指向物理內存的一個地址 2 var arr2=arr1;//數組arr2 被賦值爲arr1(引用了arr1); 3 //alert(arr1);//1,2,3,4 4 //alert(arr2);//1,2,3,4 5 /* 6 arr2.push(5) arr2變爲1,2,3,4,5 7 因爲arr2和arr1 是同一個物理地址的引用,因此 arr1同時被改變 8 */ 9 arr2.push(5); 10 11 //alert(arr1)//1,2,3,4,5 12 //alert(arr2)//1,2,3,4,5 13 var arr1=['a','b','c','d']//arr1被出新賦值 14 /* 15 因爲arr1被從新賦值,至關於從新在物理地址裏從新生成了位置和原來的無關 16 而arr2仍是原來物理地址的引用因此下面的值爲 17 */ 18 alert(arr1);//a,b,c,d 19 alert(arr2);//1,2,3,4,5