Run details:
Mozilla/5.0 (Linux; Android 10; K) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/121.0.0.0 Mobile Safari/537.36
Chrome Mobile 121
Android
Mobile
2 years ago
Benchmark.js
Native map(shallow clone)
424K/s
Object.assign shallow clone
287K/s
Native map deep slice(turns objects into arrays)
234K/s
Native map deep slice at 0(turns objects into arrays)
187K/s
Map deep clone
99K/s
Native JSON parse
44K/s
Recursive deep clone
15K/s
Lodash cloneDeep
9K/s
structuredClone
8K/s
View exact numbers
Test name Executions per second
Native map(shallow clone) 424,195 Ops/sec
Object.assign shallow clone 286,648 Ops/sec
Native map deep slice(turns objects into arrays) 234,477 Ops/sec
Native map deep slice at 0(turns objects into arrays) 187,279 Ops/sec
Map deep clone 99,112 Ops/sec
Native JSON parse 44,197 Ops/sec
Recursive deep clone 14,999 Ops/sec
Lodash cloneDeep 8,540 Ops/sec
structuredClone 8,217 Ops/sec
HTML Preparation code:
Script Preparation code:
Tests: