надеюсь, что у вас все хорошо в этом карантине, я уже полтора часа пытаюсь найти свою проблему в этом коде, я хочу, чтобы вы помогли мне в этом упражнении, у меня есть этот массив,
[
{
id: "5eb2d53443ba03249056a126",
creationDate: "2020-05-05",
percentage: "3.62%",
quantity: 21,
requestType: "1-Cash Advance",
timePercentage: "0:23:27",
totalCalls: 580,
totalTime: "8:21;00"
},
{
id: "5eb2d53443ba03249056a127",
creationDate: "2020-05-05",
percentage: "57.41%",
quantity: 333,
requestType: "2-Info Request",
timePercentage: "0:47:18",
totalCalls: 580,
totalTime: "262:49;00"
},
{
id: "5eb2d53443ba03249056a126",
creationDate: "2020-05-06",
percentage: "3.62%",
quantity: 21,
requestType: "1-Cash Advance",
timePercentage: "0:23:27",
totalCalls: 580,
totalTime: "8:21;00"
},
{
id: "5eb2d53443ba03249056a127",
creationDate: "2020-05-06",
percentage: "57.41%",
quantity: 333,
requestType: "2-Info Request",
timePercentage: "0:47:18",
totalCalls: 580,
totalTime: "262:49;00"
}
]
это моя реализация сокращения,
результат - предыдущий массив объектов,
result = Object.values(
result.reduce((object, {creationDate,
requestType, quantity,
totalTime, timePercentage,
percentage, totalCalls
}) => {
if(!object[requestType]) object[requestType] = {
requestType, quantity, totalTime,
timePercentage, percentage, totalCalls
};
if(object[requestType].requestType === requestType){
object[requestType].quantity += quantity;
if(object[requestType].creationDate !== creationDate) object[requestType].totalCalls += totalCalls;
}
return object;
})
)
то, что я ожидал, это
[
{
percentage: "3.62%",
quantity: 42,
requestType: "1-Cash Advance",
timePercentage: "0:46:54",
totalCalls: 1160,
totalTime: "16:42;00"
},
{
percentage: "57.41%",
quantity: 666,
requestType: "2-Info Request",
timePercentage: "01:33:48",
totalCalls: 1160,
totalTime: "525:38:00"
}
]
Пожалуйста, не делайте этого заботиться о причудливой части я просто хочу как общую идею, я надеюсь, что смогу решить это самостоятельно, но я не люблю застревать, поэтому я буду продолжать искать решение, ожидая, что кто-то поможет мне с моей проблемой .
Спасибо!