Я мог придумать невероятно грубый способ добиться такого рода результатов, но я решил, что я бы попросил многих экспертов, присутствующих здесь, на SO.По сути, у меня есть массив, который выглядит примерно так:
var bugs = [
{
id: "197526",
title: "Updating Lighthouse",
summary: "Enhancing the UI of Lighthouse",
status: "Active",
project: "Lighthouse",
area: "Internal Web Applications",
hours: 19
},
{
id: "190328",
title: "Adding Login Authentication to Lighthouse",
summary: "Create a login authentication process for Lighthouse",
status: "Active",
project: "Lighthouse",
area: "Administration",
hours: 12
},
...
{
id: "187562",
title: "Create a Maintenance Page",
summary: "Create a maintenance page to be displayed with the company site is down",
status: "Resolved",
project: "Other",
area: "Internal Web Projects",
hours: 4
},
];
По сути, массив содержит несколько «ошибок», каждый из которых имеет идентификатор, заголовок, сводку, состояние, проект, область и часы.,Каждая из этих ошибок будет отображаться в моем веб-приложении, но я позволяю пользователю выбирать, как они будут сгруппированы;либо по статусу, проекту или области.В зависимости от того, какой из трех вариантов они выбирают в поле выбора выше, я хочу иметь возможность отсортировать все ошибки и сгруппировать их по любой категории, которую они выбрали.Затем, когда дело доходит до их отображения, создайте простой заголовок для каждой представленной опции для этой категории.Например, если бы они сортировали по статусу, это было бы что-то вроде:
Group By: Status
Active
------
Bug with status: "active"
Bug with status: "active"
Bug with status: "active"
Resolved
--------
Bug with status: "resolved"
Bug with status: "resolved"
Должен ли я выполнить итерацию по всему массиву ошибок и, основываясь на категории для сортировки, просто создать новый массивдля каждого возможного варианта этой категории и добавить к ним соответствующие ошибки?Итак, в случае выше, создать новые массивы var activeBugs = []
и var resolvedBugs = []
?Если это так, то моей проблемой было бы знание возможных вариантов.Должен ли я сначала выполнить итерацию по всему массиву ошибок, чтобы увидеть, какие возможные опции присутствуют для категории группы желаний, прежде чем создавать эти новые массивы?
Каков наилучший способ сделать это, не прибегая к другим плагинам jQuery?