函数: deepClone()
ts
function deepClone<T>(data): T;定义于: object.ts:17
深拷贝任意数据,返回与原值结构相同但互不共享引用的新值。
类型参数
| 类型参数 | 默认类型 |
|---|---|
T | any |
参数
| 参数 | 类型 | 描述 |
|---|---|---|
data | T | 待拷贝的原数据 |
返回值
T
拷贝后的新数据
备注
优先使用原生 structuredClone(性能好、支持 Date/Map/Set 等); 当遇到函数、Symbol 等不可克隆的值而抛错时,回退为手动递归拷贝 (该回退仅递归对象/数组的自身可枚举属性,不会复制原型与不可枚举属性)。
示例
ts
const src = { id: 1, list: [1, 2] }
const copy = deepClone(src)
copy.list === src.list // => false(引用已断开)参见
deepEqual 深比较两个值是否结构相等