Run details:
Mozilla/5.0 (Windows NT 5.1; rv:102.0) Gecko/20100101 Goanna/4.8 Firefox/102.0 Basilisk/52.9.0
Firefox 102
Windows XP
Desktop
2 years ago
Benchmark.js
Native map(shallow clone)
16.4M/s
Native map deep slice at 0(turns objects into arrays)
2.4M/s
Native map deep slice(turns objects into arrays)
2.4M/s
Object.assign shallow clone
1.0M/s
Map deep clone
357K/s
Recursive deep clone
331K/s
Native JSON parse
50K/s
Lodash cloneDeep
27K/s
structuredClone
25K/s
View exact numbers
Test name Executions per second
Native map(shallow clone) 16,414,278 Ops/sec
Native map deep slice at 0(turns objects into arrays) 2,359,116 Ops/sec
Native map deep slice(turns objects into arrays) 2,351,240 Ops/sec
Object.assign shallow clone 1,006,604 Ops/sec
Map deep clone 357,022 Ops/sec
Recursive deep clone 331,488 Ops/sec
Native JSON parse 50,436 Ops/sec
Lodash cloneDeep 27,284 Ops/sec
structuredClone 24,645 Ops/sec
HTML Preparation code:
Script Preparation code:
Tests: