Lodash cloneDeep vs Native map deep slice(turns objects into arrays) vs Native JSON parse vs Native map deep slice at 0(turns objects into arrays) vs Native map(shallow clone) vs Recursive deep clone vs Map deep clone vs Object.assign shallow cloneFastest: Native map(shallow clone) (22.8x faster)
8,906,210 ops/sec
5,961,718 ops/sec
5,864,530 ops/sec
5,832,828 ops/sec
541,574 ops/sec
432,492 ops/sec
414,665 ops/sec
390,648 ops/sec
Fastest: Native map(shallow clone) (131.1x faster)
35,115,240 ops/sec
34,248,140 ops/sec
13,965,987 ops/sec
12,680,318 ops/sec
1,915,546 ops/sec
1,697,078 ops/sec
442,402 ops/sec
267,948 ops/sec
Fastest: Native map(shallow clone) (22.6x faster)
7,725,711 ops/sec
5,769,510 ops/sec
5,583,068 ops/sec
3,765,644 ops/sec
530,742 ops/sec
450,630 ops/sec
393,881 ops/sec
341,408 ops/sec
Results show median performance across all community submissions. Run this benchmark yourself to verify on your device.
| Test case name | Result |
|---|---|
| Lodash cloneDeep | |
| Native map deep slice(turns objects into arrays) | |
| Native JSON parse | |
| Native map deep slice at 0(turns objects into arrays) | |
| Native map(shallow clone) | |
| Recursive deep clone | |
| Map deep clone | |
| Object.assign shallow clone |
| Test name | Executions per second |
|---|---|
| ✓ Native map(shallow clone) | 56,085,468 Ops/sec |
| Object.assign shallow clone | 53,498,904 Ops/sec |
| Native map deep slice(turns objects into arrays) | 28,019,550 Ops/sec |
| Native map deep slice at 0(turns objects into arrays) | 25,103,878 Ops/sec |
| Recursive deep clone | 4,457,585 Ops/sec |
| Map deep clone | 4,344,996 Ops/sec |
| Native JSON parse | 850,566 Ops/sec |
| Lodash cloneDeep | 481,680 Ops/sec |