Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/126.0.0.0 Safari/537.36
Chrome 126
Mac OS X 10.15.7
Desktop
2 years ago
Benchmark.js
spread
5.7M/s
obj.assign
2.8M/s
manual stack
1.2M/s
Ramda clone
1.0M/s
og hand rolled (still recursive)
980K/s
hand rolled
624K/s
Lodash cloneDeep
579K/s
Json clone
545K/s
View exact numbers
Test name Executions per second
spread 5,658,670 Ops/sec
obj.assign 2,812,646 Ops/sec
manual stack 1,222,164 Ops/sec
Ramda clone 1,045,434 Ops/sec
og hand rolled (still recursive) 979,507 Ops/sec
hand rolled 624,067 Ops/sec
Lodash cloneDeep 578,981 Ops/sec
Json clone 545,011 Ops/sec
HTML Preparation code:
Script Preparation code:
Tests: