Test name | Executions per second |
---|---|
iterate / push | 26001.8 Ops/sec |
reduce / spread | 3137.3 Ops/sec |
reduce / concat | 7820.8 Ops/sec |
reduce / push | 29214.8 Ops/sec |
array.flat | 1602.2 Ops/sec |
frray.flatMap | 1592.1 Ops/sec |
var arr = [];
for (let i = 0; i < 100; i++) {
let internal = [];
for (let j = 0; j < 100; j++) {
internal.push(i * 100 + j);
}
arr.push(internal);
}
let flattened = [];
for (let i = 0; i < arr.length; i++) {
let internal = arr[i];
for (let j = 0; j < internal.length; j++) {
flattened.push(internal[j]);
}
}
let flattened = arr.reduce((acc, i) => [ acc, i], []);
let flattened = arr.reduce((acc, i) => acc.concat(i), []);
let flattened = arr.reduce((acc, i) => {
i.forEach(e => acc.push(e));
return acc;
}, []);
let flattend = arr.flat();
let flattend = arr.flatMap((x) => (x));