1.0.4 • Published 1 year ago

fastest-deep-clone-json v1.0.4

Weekly downloads
-
License
MIT
Repository
github
Last release
1 year ago

This is the fastest deep-clone implementation for JSON objects - faster than structuredClone, JSON.parse(JSON.stringify(obj)) and other implementations.

This package is ESM-only.

  • Dependencies: 0
  • Bundle size (minified and gzipped): 316 Bytes
  • Module count: 1

It avoids recursion in favor of a stack, in order to keep the memory usage low.

Performance comparison

MethodOps/sec
This package (iterative deep clone)3.560.061
recursive deep clone3.476.448
fastest-json-copy v21.523.427
JSON.stringify1.465.516
fastest-json-copy v11.320.249
jsondiffpatch.clone1.245.459
structuredClone789.100

Run it yourself: https://www.measurethat.net/Benchmarks/ShowResult/534839 (this package is deepCopyObjectIterative in that comparison)

Installation

pnpm install fastest-deep-clone-json

or

npm install fastest-deep-clone-json

Usage

import { deepCloneJson } from 'fastest-deep-clone-json';

const obj = { a: 1, b: { c: 2 } };

const cloned = deepCloneJson(obj);

console.log(cloned); // { a: 1, b: { c: 2 } }

This library will only work with JSON-serialized objects. It does not handle data types like Date, Map, Set, BigInt, Symbol, Function etc etc. The goal is to provide the fastest deep-clone implementation for JSON objects.

1.0.4

1 year ago

1.0.3

1 year ago

1.0.2

1 year ago

1.0.1

1 year ago

1.0.0

1 year ago