Мне поручено создать таблицу временных таблиц, в которой будут отображаться часы, отработанные каждым клиентом в день. Таблица должна выглядеть как на картинке ниже фрагменте кода:Группировка и суммирование массива объектов Javascript
table, td, th {
border: 1px solid black;
}
<div>
<table id="testTable" class="table">
<tr>
<th>Client name</th>
<th>Monday</th>
<th>Tuesday</th>
<th>Wednesday</th>
<th>Thursday</th>
<th>Friday</th>
<th>Saturday</th>
<th>Sunday</th>
</tr>
<tr>
<td>client1</td>
<td>0</td>
<td>5</td>
<td>3</td>
<td>2</td>
<td>3</td>
<td>0</td>
<td>0</td>
</tr>
<tr>
<td>client2</td>
<td>4</td>
<td>1</td>
<td>4</td>
<td>2</td>
<td>1</td>
<td>0</td>
<td>0</td>
</tr>
</table>
</div>
timesheetItems = [
timesheetItem = {
clientName: client1,
hoursWorked: 2,
day: Monday
},
timesheetItem = {
clientName: client1,
hoursWorked: 3,
day: Monday
},
timesheetItem = {
clientName: client1,
hoursWorked: 4,
day: Wednesday
},
timesheetItem = {
clientName: client2,
hoursWorked: 4,
day: Monday
}
];
groupedArray = {
Client1 = {
Mon: 5,
tues: 3,
...
sun: 0
},
client2 = {
mon:2,
...
},
client3 = {
...
},
...
}
Так что, если кто-нибудь может подсказать, как идти о группировке массив Timesheet пунктов, так что результат будет выглядеть выше фрагмент кода, так что я могу легко петля из сгруппированного массива, чтобы заполнить таблицу, было бы очень полезно. Спасибо.
[Массив # уменьшить] (https://developer.mozilla.org/en/docs/Web/JavaScript/Reference/Global_Objects/Array/reduce) – Xotic750