const count = 10_000;
const variaty = 100;
const array = new Array(count)
.fill(null)
.map((_, index) => ({
id: index + 1,
name: `Test_${Math.ceil(Math.random() * variaty)}`
}));
array.reduce((result, obj) => {
const existingArray = result.find(arr => arr[0].name === obj.name);
if (existingArray) {
existingArray.push(obj);
} else {
result.push([obj]);
}
return result;
}, []);
Object.values(array.reduce((acc, entry) => {
acc[entry.name] ??= [];
acc[entry.name].push(entry);
return acc;
}, {}));