有一个数组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到结尾。)
3、使用for循环遍历-赋值给新数组 let len = arr.length,str = []; for(let i=0;i<len;i++){ str.push(arr[i]); }
4、使用json.stringify转字符串方法(效率最低) str = JSON.parse(JSON.stringify(arr));