Run details:
Mozilla/5.0 (Macintosh; Intel Mac OS X 10_15_7) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/134.0.0.0 Safari/537.36
Chrome 134
Mac OS X 10.15.7
Desktop
one year ago
spread concat -- output = [].concat(...batches)
65K/s
push loop -- for (const v of batch) { output.push(v) }
40K/s
push spread -- output.push(...batch)
32K/s
repeated concat -- output = output.concat(batch)
813/s
repeated spread -- output = [...output, ...batch]
278/s
View exact numbers
Test name Executions per second
spread concat -- output = [].concat(...batches) 65,177 Ops/sec
push loop -- for (const v of batch) { output.push(v) } 40,467 Ops/sec
push spread -- output.push(...batch) 31,650 Ops/sec
repeated concat -- output = output.concat(batch) 813 Ops/sec
repeated spread -- output = [...output, ...batch] 278 Ops/sec
Script Preparation code:
Tests: