Test name | Executions per second |
---|---|
Reduce and Spread | 21348.1 Ops/sec |
ForEach and Mutate (for .. in loop) | 59798.0 Ops/sec |
Mutate with Object.assign | 56688.5 Ops/sec |
Foreach and Mutate (Object.assign) | 2785.2 Ops/sec |
Reduce Mutate | 2795.2 Ops/sec |
var objectsArray = Array(1000).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 (key in obj) {
combined[key] = obj[key];
}
});
var combined = Object.assign(objectsArray)
var combined = {}
objectsArray.forEach(obj => Object.assign(combined, obj));
var combined = objectsArray.reduce((memo, obj) => Object.assign(memo, obj), {});