深淺拷貝的理解與使用
阿新 • • 發佈:2020-12-30
三分鐘瞭解深拷貝與淺拷貝
原理:
所謂深拷貝的就是多層拷貝物件或陣列中的資料,淺拷貝的話就是拷貝一層資料
首先是淺拷貝的實現
- 我們可以使用es6的語法
var obj = object.assgin({},"要拷貝的資料")
2.第二種結構賦值
let a={
age:1
}
let b={...a}
a.age=2
console.log(b.age)
3.第三種js轉換進行賦值
JSON.parse(JSON.stringify(object))
其次是深拷貝的實現
深拷貝使用遞迴來實現
function kao(obj) {
var arr = ""
for(var i in obj ){//obj是要拷貝的物件
if(typeof(obj[i]) == object){
arr = arr.concat(kao(obj[i]))
}else{
arr.push(obj[i])
}
}
}