[JavaScript] 浅拷贝

<u></u>slice操作并不改变原来的数组,会对截取的数组进行浅拷贝,返回一个新数组。

浅拷贝指的是,对值类型的对象进行复制值,
对引用类型的对象复制其引用,并不新建一个对象。

例如:

m=[1,2,{a:3}]
n=m.slice(1)
console.assert(n[0]===2)
console.assert(m[1]===2)
n[0]=5
console.assert(n[0]===5)
console.assert(m[1]===2)

console.assert(n[1].a===3)
console.assert(m[2].a===3)
n[1].a=5
console.assert(n[1].a===5)
console.assert(m[2].a===5)
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容