JS中如何理解浅拷贝和深拷贝?

浅拷贝我的理解就是只是一个引用指向,内存里面并没有开辟一个新的空间,也就是一个快捷方式。
而深拷贝是不光创建了一个新的指向,同时这个指向一个新的内存空间,这个空间的内容和之前被拷贝的空间内容是一样的。
不知道我的理解是否正确。
有没有大神用代码示例演示下:

海绵宝宝撒
浏览 465回答 1
1回答

繁华开满天机

let origin = {    a: 1}let shallowCopy = origin // 浅拷贝let deepCopy = {...origin} // 深拷贝console.log(origin) // {a:1}console.log(shallowCopy) // {a:1}console.log(deepCopy) // {a:1}origin.a = 2console.log(origin) // {a:2}console.log(shallowCopy) // {a:2}console.log(deepCopy) // {a:1}
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

JavaScript