深拷贝
| 方案 | 优点 | 缺点 |
|---|---|---|
| Lodash _.cloneDeep | 支持所有类型、稳定、处理循环引用 | 需安装库(可按需引入) |
| rfdc | 体积小、速度快 | 边缘类型支持不足 |
| 原生 structuredClone | 无需安装、原生支持 | 类型支持有限、兼容性一般 |
| 手写深拷贝 | 无依赖、自定义程度高 | 易踩坑(循环引用、特殊类型) |
JSON.parse(JSON.stringify(obj)) 是无依赖的简易深拷贝方案,仅适合拷贝「普通对象 / 数组」(无特殊类型、无循环引用);
核心坑点:无法处理函数、正则、Date 等特殊类型,循环引用会报错,丢失原型链;
生产环境 / 复杂场景(如包含特殊类型、循环引用),优先用 Lodash 的 _.cloneDeep(稳定、全面);
简单测试 / 演示场景,可用 JSON.parse(JSON.stringify()) 节省依赖。
浙公网安备 33010602011771号