关于js对象引用的小例子

看完下面的代码,相信对js对象引用又有了新的认识,直接上代码:

 1     // split()把字符串分割成字符串数组
 2     // reverse() 会改变数组本身,**并返回原数组的引用**。!!!!
 3     var arr1 = "john".split('');  // arr1=["j","o","h","n"]
 4 
 5     var arr2 = arr1.reverse(); // arr1 = arr2 = ["n","h","o","j"]; arr1 and arr2有相同的引用
 6 
 7     var arr3 = "jones".split(''); // arr3=["j","o","n","e","s"];
 8 
 9     arr2.push(arr3); // arr2=["n","h","o","j",["j","o","n","e","s"]]
10     // arr1 and arr2有相同的引用 so: arr1=["n","h","o","j",["j","o","n","e","s"]]
11 
12     console.log("array 1: length=" + arr1.length + " last=" + arr1.slice(-1));
13     // array 1: length=5 last=j,o,n,e,s
14 
15     console.log("array 2: length=" + arr2.length + " last=" + arr2.slice(-1));
16     // array 2: length=5 last=j,o,n,e,s
17 
18 
19     var myArr = [1,2,3,4];
20     var myArr2 = [5,6,7,8];
21     console.log(myArr.slice(-1)); // [4]
22     myArr.push(myArr2);
23     console.log(myArr); // [1, 2, 3, 4, Array[4]]

 

posted @ 2017-01-10 18:27  芒果酱-Jessie  阅读(368)  评论(0编辑  收藏  举报