我想知道如何在本機反應中“雙重排序”專案以獲得雙重標準排序串列。
我從 BE 收到的資料是一個比賽串列:每場比賽都是一個包含 2 名球員、一個時間和一場比賽的物件。
我想按時間(以便在明天的比賽之前顯示今天的比賽)和按比賽(以便在較低的比賽之前顯示更重要的比賽)對專案進行排序。
如果在同一天和同一場比賽中進行了兩場或多場比賽,則會顯示較早的比賽。
一個模式更好地說明了我的意思:我想自定義用戶界面,包括日行、比賽行和比賽行。

我從 BE 收到的資料是這樣格式化的:

我怎樣才能得到我想要的?我試過使用可排序串列但沒有結果。
提前TY
uj5u.com熱心網友回復:
過濾此類資料的最佳方法是。
- 過濾完整串列并制作一個物件陣列,該物件應按相同的時間戳分組。2)現在迭代過濾的物件陣列并過濾物件值。
uj5u.com熱心網友回復:
sort的javascript 檔案顯示您可以使用任意函式進行排序。我會撰寫一個函式,它首先比較天數,然后比較比賽:
function compareByDayThenByCompetition(a, b) {
if (a.day < b.day) {
return -1;
}
if (a.day > b.day) {
return 1;
}
return a.competition - b.competition;
}
events = [{day:3, competition:2}, {day:3, competition:3}, {day:3, competition:1}, {day:2, competition:1}]
console.log(events.sort(compareByDayThenByCompetition))
轉載請註明出處,本文鏈接:https://www.uj5u.com/qiye/491988.html
