根據另一個數組對JavaScript 數組進行排序
按特定順序排列數組可能是一項具有挑戰性的任務,尤其是當您不這樣做時有ID可以依靠。考慮以下陣列:
itemsArray = [ ['Anne', 'a'], ['Bob', 'b'], ['Henry', 'b'], ['Andrew', 'd'], ['Jason', 'c'], ['Thomas', 'b'], ]; sortingArr = ['b', 'c', 'b', 'b', 'a', 'd'];
目標是重新排列 itemsArray 以符合 sortingArr 中指定的順序。使用單行解決方案,您可以透過以下方式實現此目的:
itemsArray.sort(function(a, b) { return sortingArr.indexOf(a[1]) - sortingArr.indexOf(b[1]); });
或者,為了更簡潔:
itemsArray.sort((a, b) => sortingArr.indexOf(a[1]) - sortingArr.indexOf(b[1]));
此程式碼利用陣列排序函數根據下列項目重新排列itemsArray sorting 的元素核心思想是根據每個內部數組的第二個元素(例如“a”、“b”、“c”、“d”)對數組進行排序。透過這樣做,itemsArray 中的項目將與 sortingArr 中定義的優先權對齊。
以上是如何根據另一個陣列的順序對 JavaScript 陣列進行排序?的詳細內容。更多資訊請關注PHP中文網其他相關文章!