let data=[
{brand:'iowa', price:12},
{brand:'iowa', price:42},
{brand:'zero', price:58},
{brand:'zero', price:32}]
let data=[
{brand:'iowa', price:54},
{brand:'zero', price:90}]
const uniqueWithSum = (arr, idKey, sumKey) =>
Object.values(arr.reduce((acc, n) => {
const id = n[idKey];
acc[id] ??= Object.assign(new n.constructor, n, { [sumKey]: 0 });
acc[id][sumKey] += n[sumKey];
return acc;
}, {}));
const result = uniqueWithSum(data, 'brand', 'price');
// итерации 1-го этапа:
{}
{'iowa': 12}
{'iowa': 12 + 42 = 54}
{'iowa': 54, 'zero': 58}
{'iowa': 54, 'zero': 58 + 32 = 90}
{'iowa': 54, 'zero': 90}
в массив как у вас ожидается.