# @clarketm/deepclone

> JavaScript deep clone implementation

Latest version **1.1.4** (published 2018-10-26) · MIT license · 0 weekly downloads

## Install

```sh
npm install @clarketm/deepclone
pnpm add @clarketm/deepclone
yarn add @clarketm/deepclone
bun add @clarketm/deepclone
```

## Health

**Score 15/100 (F)** — status: abandoned.

Positive: no vulnerabilities.

Warnings: low downloads; no types; no esm support.

Negative: abandoned; low maintenance score.

## Facts

| | |
|---|---|
| Version | 1.1.4 |
| Published | 2018-10-26 |
| First published | 2018-05-10 |
| Weekly downloads | 0 |
| License | MIT |
| TypeScript types | none |
| Module format | CommonJS |
| Dependencies | 0 |
| Unpacked size | 1.4 MB |
| Known vulnerabilities | 0 |
| Install scripts | no |
| GitHub stars | 5 |
| Author | Travis Clarke |
| Maintainers | clarketm |
| Keywords | javascript, clone, deep-clone |

## Links

- npm: https://www.npmjs.com/package/@clarketm/deepclone
- Repository: https://github.com/clarketm/DeepClone
- Homepage: https://github.com/clarketm/DeepClone#readme
- Issues: https://github.com/clarketm/DeepClone/issues
- npm.io page: https://npm.io/package/@clarketm/deepclone

## Recent versions

- 1.1.4 (latest) — 2018-10-26
- 1.1.3 — 2018-10-26
- 1.1.2 — 2018-10-26
- 1.0.2 — 2018-05-11
- 1.0.1 — 2018-05-10
- 1.0.0 — 2018-05-10

## README

# [DeepClone](https://www.travismclarke.com/deepclone/global.html#DeepClone)

Light-weight deep clone implementation for JavaScript.

[![NPM release](https://img.shields.io/npm/v/@clarketm/deepclone.svg)](https://www.npmjs.com/package/@clarketm/deepclone)
[![Build Status](https://circleci.com/gh/clarketm/DeepClone.svg?style=shield)](https://circleci.com/gh/clarketm/deepclone)

> ℹ️ For a standalone **Object** type with this deep clone implementation, check out the [super](https://github.com/clarketm/super) repository: [super/object](https://github.com/clarketm/super/tree/master/packages/Object#readme)

## Installation
```bash
$ npm install @clarketm/deepclone
```

## Modules

<dl>
<dt><a href="#module_DeepClone">DeepClone</a></dt>
<dd></dd>
</dl>

## Functions

<dl>
<dt><a href="#exp_module_DeepClone--DeepClone">DeepClone(obj, [config])</a> ⇒ <code>object</code> ⏏</dt>
<dd></dd>
</dl>

## Typedefs

<dl>
<dt><a href="#Config">Config</a> : <code>object</code></dt>
<dd></dd>
</dl>

<a name="module_DeepClone"></a>

## DeepClone
<a name="exp_module_DeepClone--DeepClone"></a>

### DeepClone(obj, [config]) ⇒ <code>object</code> ⏏
**Kind**: global method of [<code>DeepClone</code>](#module_DeepClone)  
**Returns**: <code>object</code> - cloned object  

| Param | Type | Default |
| --- | --- | --- |
| obj | <code>object</code> |  | 
| [config] | [<code>Config</code>](#Config) | <code>{}</code> | 

**Example**  
```js
const clone = DeepClone({ key1: ["1", 1, true, (a, b) => a+b], [Symbol("key2")]: {s: "s"} });

console.log(clone);
// { key1: ["1", 1, true, (a, b) => a+b], Symbol("key2"): {s: "s"} }
```
<a name="Config"></a>

## Config : <code>object</code>
**Kind**: global typedef  
**Properties**

| Name | Type | Default |
| --- | --- | --- |
| [includeNonEnumerable] | <code>boolean</code> | <code>false</code> |

---
_Source: https://npm.io/package/@clarketm/deepclone · Machine-readable twin of the npm.io package page. Health data is recomputed on every publish._
