js 數組的深度拷貝 的四種實現方法

首先聲明本人資質尚淺,本文只用於我的總結。若有錯誤,歡迎指正、共同提升。es6

-----------------------------------------------------------------------------------數組

 
var ary1=[1,2];
 
es5:
方法一:適用  單層 數組嵌套的深拷貝
var ary2 = ary1.concat();
 
方法二:適用  多層 數組嵌套的深拷貝
var ary2 = JSON.parse(JSON.stringify(ary1));
  //此方法適用於Oject的深度拷貝,由於Array屬於Oject類型,因此也適用於此處;
  //須要注意的是:做爲Oject的深度拷貝時,要複製的function會直接消失,因此這個方法只能用在單純只有數據的對象。
 
 
es6:
// 方法三:適用  單層 數組嵌套的深拷貝
var ary2 = [...ary1];
 
// 方法四:適用  單層 數組嵌套的深拷貝
var [...ary2] = ary1;
 
 
 
 

若有錯誤,歡迎評論指正、共同提升。[握手]    post

歡迎轉載,轉載請註明:轉載自[ http://www.cnblogs.com/juneling ]es5

相關文章
相關標籤/搜索