今天在开发过程中遇到深拷贝与浅拷贝的问题
const userData1: number[][] = this.dataMangager.getUserDataMap();该行代码中的
userData1
是一个指向 this.dataMangager.getUserDataMap()
返回的二维数组的引用。当 this.dataMangager.getUserDataMap()
返回的二维数组发生改变时,userData1
仍然指向同一个数组,因此 userData1
也会随之改变。
换句话说,userData1
和 this.dataMangager.getUserDataMap()
引用的是同一个数组对象,因此它们会同步变化。
解决此问题用到了下文链接中的方法:
const userData1: number[][] = JSON.parse(JSON.stringify(this.dataMangager.getUserDataMap()));
【ionic开发】TypeScript的深拷贝与浅拷贝 - 简书 (jianshu.com:
标签:TypeScript,dataMangager,userData1,数组,拷贝,getUserDataMap From: https://www.cnblogs.com/kekit-rei/p/17577307.html