Run details:
Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/137.0.0.0 Safari/537.36
Chrome 137
Windows
Desktop
one year ago
Benchmark.js
Native map(shallow clone)
8.1M/s
Object.assign shallow clone
6.2M/s
Recursive deep clone
1.7M/s
Native map deep slice at 0(turns objects into arrays)
1.5M/s
Map deep clone
1.4M/s
Native map deep slice(turns objects into arrays)
1.4M/s
Lodash cloneDeep
293K/s
Native JSON parse
198K/s
structuredClone
116K/s
View exact numbers
Test name Executions per second
Native map(shallow clone) 8,149,548 Ops/sec
Object.assign shallow clone 6,236,470 Ops/sec
Recursive deep clone 1,717,480 Ops/sec
Native map deep slice at 0(turns objects into arrays) 1,465,952 Ops/sec
Map deep clone 1,432,784 Ops/sec
Native map deep slice(turns objects into arrays) 1,365,164 Ops/sec
Lodash cloneDeep 292,813 Ops/sec
Native JSON parse 198,385 Ops/sec
structuredClone 116,062 Ops/sec
HTML Preparation code:
Script Preparation code:
Tests: