Вот чего я пытаюсь достичь:
У меня есть этот массив:
const data = [
{ paidOn: "01", workstreamName: "Leeann", amount: 242759 },
{ paidOn: "02", workstreamName: "Angelico", amount: 58142 },
{ paidOn: "03", workstreamName: "Zorine", amount: 419310 },
{ paidOn: "02", workstreamName: "Janine", amount: 135015 },
{ paidOn: "04", workstreamName: "Shannon", amount: 6396 },
{ paidOn: "01", workstreamName: "Wang", amount: 198277 },
];
- Мне нужно найти все ключи "paidOn" с одинаковым значением и объединить их.
- Используйте значение workstreamName в качестве ключа и значение суммы в качестве значения для нового ключа.
Вывод будет выглядеть следующим образом:
const data = [
{ paidOn:"01", "Leeann": 242759, "Wang": 198277 },
{ paidOn:"02", "Angelico": 58142, "Janine": 135015 },
{ paidOn:"03", "Zorine": 419310 },
{ paidOn:"04", "Shannon": 6396 }
];
До сих пор мне удалось выполнить шаг 2 с помощью следующего кода, но я не могу понять, как выполнить шаг 1:
const data = [
{ paidOn: "01", workstreamName: "Leeann", amount: 242759 },
{ paidOn: "02", workstreamName: "Angelico", amount: 58142 },
{ paidOn: "03", workstreamName: "Zorine", amount: 419310 },
{ paidOn: "04", workstreamName: "Janine", amount: 135015 },
{ paidOn: "05", workstreamName: "Shannon", amount: 6396 },
{ paidOn: "05", workstreamName: "Wang", amount: 198277 },
{ paidOn: "06", workstreamName: "Maurise", amount: 389081 },
{ paidOn: "07", workstreamName: "Nike", amount: 125030 },
{ paidOn: "08", workstreamName: "Teodor", amount: 142803 },
{ paidOn: "08", workstreamName: "Stefan", amount: 398831 },
{ paidOn: "09", workstreamName: "Fancy", amount: 353254 },
{ paidOn: "10", workstreamName: "Salli", amount: 492496 },
{ paidOn: "10", workstreamName: "Daniela", amount: 147206 },
{ paidOn: "11", workstreamName: "Tandy", amount: 362225 },
{ paidOn: "11", workstreamName: "Sidnee", amount: 381233 },
{ paidOn: "11", workstreamName: "Kordula", amount: 86582 },
{ paidOn: "12", workstreamName: "Dedra", amount: 443826 },
{ paidOn: "02", workstreamName: "Essy", amount: 449565 },
];
const workstreamNames = data.map((item) => {
return item.workstreamName
});
const amount = data.map((item) => {
return item.amount
});
const res = Object.fromEntries(workstreamNames.map((_, i) => [workstreamNames[i], amount[i]]))
console.log(res);
Буду признателен за любую помощь или подсказку.
непонятно,
workstreamName
уникальны для одного и того жеpaidOn
, или их надо складывать вместе?