Test name | Executions per second |
---|---|
Reduce and Spread | 1175197.1 Ops/sec |
ForEach and Mutate (for .. in loop) | 1089860.5 Ops/sec |
Mutate with Object.assign | 1723426.0 Ops/sec |
Foreach and Mutate (Object.assign) | 1511515.1 Ops/sec |
var objectsArray = Array(10).fill(() => {
return Object.fromEntries(Array(100).fill(() => {
const key = Math.random().toString(36).substring(2, 5);
const value = Math.random().toString(36).substring(2, 5);
return [key, value];
}));
});
var combined = objectsArray.reduce((memo, obj) => ({memo, obj}), {});
var combined = {}
objectsArray.forEach(obj => {
for (const key in obj) {
combined[key] = obj[key];
}
});
var combined = Object.assign(objectsArray)
var combined = {}
objectsArray.forEach(obj => Object.assign(combined, obj));