1. 程式人生 > >js陣列賦值:不修改原陣列,返回新的陣列 。

js陣列賦值:不修改原陣列,返回新的陣列 。

有一個數組arr = [1, 2, 3, 4, 10]。
var str = new Array;

str = arr; //這個不是賦值,將陣列arr的引用賦給str,所以改變str也會改變arr (js實際建立的str是一個物件);

正確賦值:
1、str = [].concat(arr);
content用於連線多個數組:arr1.concat(arr2,arr3,。。。。)

2、str=arr.slice(0);
返回一個新陣列,從0到最後。
(slice有兩個引數:xx.slice(start,end),返回陣列xx下標從start到end的元素。若未定義end則返回start到結尾。)