企业🤖AI智能体构建引擎,智能编排和调试,一键部署,支持私有化部署方案 广告
### js 深拷贝 深拷贝指的是在拷贝对象时,会递归地复制所有子对象,而不仅仅是复制引用。这意味着新对象和原对象是完全独立的,对新对象进行修改不会影响原对象。 在 JavaScript 中实现深拷贝有多种方式,以下是其中几种常见的方法: 方法一:使用 JSON 序列化和反序列化 ``` let newObj = JSON.parse(JSON.stringify(oldObj)); ``` 方法二:使用递归进行拷贝 ``` function deepCopy(obj) { if (typeof obj !== 'object' || obj === null) { return obj; } let newObj = Array.isArray(obj) ? [] : {}; for (let key in obj) { newObj[key] = deepCopy(obj[key]); } return newObj; } let newObj = deepCopy(oldObj); ``` 方法三:使用第三方库,例如 Lodash 的 cloneDeep 方法 ``` let newObj = _.cloneDeep(oldObj); ```