Skip to content

@pmun/utils / deepClone

Function: deepClone()

ts
function deepClone<T>(obj): T;

深拷贝对象,支持基本类型、数组、对象、日期和正则表达式

Type Parameters

T

T

Parameters

obj

T

要拷贝的对象

Returns

T

深拷贝后的对象,与原对象完全独立

Example

ts
const original = { a: 1, b: { c: 2 }, d: [1, 2, 3], e: new Date() }
const copy = deepClone(original)
copy.b.c = 100
console.log(original.b.c) // 2,原对象不受影响

// 支持日期对象
const date = new Date()
const clonedDate = deepClone(date)
console.log(date === clonedDate) // false,不是同一引用