# \_.cloneDeep(value)

URL: https://caijiao.org/lodash/docs/Lang/_.cloneDeep
Source: docs/lodash/docs/Lang/_.cloneDeep.md
Description: 创建一个深拷贝（deep clone）的 'value'，该值及其内部的所有引用类型数据结构都被递归地拷贝，生成一个新的对象，原对象和新对象之间没有任何引用关系。

`_.cloneDeep(value)` 创建一个深拷贝（deep clone）的 `value`，该值及其内部的所有引用类型数据结构都被递归地拷贝，生成一个新的对象，原对象和新对象之间没有任何引用关系。

- `value`：要进行深拷贝的值。

示例：

```javascript
const obj = { a: 1, b: { c: 2 } };
const arr = [1, [2, { d: 3 }]];

const clonedObj = _.cloneDeep(obj);
const clonedArr = _.cloneDeep(arr);

// 修改拷贝后的对象
clonedObj.a = 100;
clonedObj.b.c = 200;

// 输出修改后的拷贝后的对象和原始对象
console.log(clonedObj); // 输出：{ a: 100, b: { c: 200 } }
console.log(obj); // 输出：{ a: 1, b: { c: 2 } }

// 修改拷贝后的数组
clonedArr[0] = 100;
clonedArr[1][1].d = 300;

// 输出修改后的拷贝后的数组和原始数组
console.log(clonedArr); // 输出：[100, [2, { d: 300 }]]
console.log(arr); // 输出：[1, [2, { d: 3 }]]
```

在这个例子中，`_.cloneDeep` 创建了对象 `obj` 和数组 `arr` 的深拷贝 `clonedObj` 和 `clonedArr`。修改拷贝后的对象或数组不会影响原始对象或数组，也不会影响拷贝后的对象或数组内部的引用类型数据结构。
