# 克隆实例

URL: https://caijiao.org/decimaljs/08-advanced/02-clone
Source: docs/decimaljs/08-advanced/02-clone.md
Description: 介绍 decimal.js 中克隆 Decimal 实例的方法，帮助开发者复制数值实例以避免数据修改带来的副作用。

decimal.js 提供方法来创建现有 Decimal 实例的副本，方便在需要保留原始值的场景下进行操作。

## 克隆方法

使用 `Decimal.clone()` 可以创建 decimal.js 的完全独立副本，但通常我们直接使用构造函数复制实例：

```js
import Decimal from 'decimal.js';

const original = new Decimal('123.456');
const clone = new Decimal(original);

console.log(clone.toString()); // "123.456"
````

这里通过 `new Decimal(original)` 创建了一个新的实例，值与原实例相同。

## 使用场景

* 避免修改原实例导致数据混乱。
* 在复杂计算中，需要保留初始值备用。
* 多线程或异步处理中，保证数据独立性。

## 注意事项

* 克隆实例后，两者互不影响，修改 clone 不会改变 original。
* 直接赋值只复制引用，不是克隆。

---

通过实例克隆，可以安全地复制数值，保证程序逻辑的健壮性和数据一致性。
