Это, наверное, что-то действительно глупое, что я слишком задумываюсь или просто не думаю о себе (бодрствовал почти 30 часов, что более чем вероятно).Зацикливание массива объектных литералов и сопоставимых клиентов
У меня есть массив «продаж», смотрите ниже:
let sales = [
{
amount: 100,
customerName: "Johan"
},
{
amount: 262,
customerName: "James"
},
{
amount: 42,
customerName: "Fraser"
},
{
amount: 983,
customerName: "Calum"
},
{
amount: 246,
customerName: "Johan"
}
,
{
amount: 873,
customerName: "James"
}
,
{
amount: 210,
customerName: "Fraser"
},
{
amount: 68,
customerName: "Calum"
}
];
То, что я пытаюсь сделать, это цикл по массиву и вместо 2 записей для каждого клиента, я хотел бы 1 запись, кроме общая сумма должна составлять все суммы, связанные с этим клиентом, вместе взятые.
Я попытался использовать sales.forEach
, а затем нажав значения в новый массив ... это просто сделал тот же массив снова .. в основном.
Я также пробовал использовать sales.reduce
, но мой вывод не сделал то, что я описал выше, вместо этого он по-прежнему сделал 2 записи, за исключением того, что вторая запись добавила итоговые значения.
У меня был взгляд вокруг и даже здесь, нет ничего точно как то, что я ищу.
Я хочу сделать это в чистом javascript.
Если вам нужны разъяснения, просто спросите в комментариях, а не отметьте!
вы хотите массив в качестве результата или объект? –
Не могли бы вы показать свое предпринятое (нерабочее) решение и показать полученный результат и желаемый результат? –