一次TypeScript深度拷贝实践
最近遇到一个数据拷贝问题。
后来发现一个小天才,使用JSON.parse(JSON.stringify(this.dataObj))实现了深度拷贝。
直接这样做会导致NaN类型被解析成null,类型完全变了,这不是我想看到的。
只能在JSON.parse里添加一个reviver方法。
JSON.parse(JSON.stringify(this.dataObj), function (key, value) { return value === null ? NaN : value; })
解决问题。
2023.01.30更新
最合理的还是使用structuredClone方法更新。