如何在JavaScript中按日期值對數組進行排序
在JavaScript中找出如何按日期值對數組中的項目進行排序
假設您有一個類似於以下的對象數組,其中包含一組date objects:
1 | const activities = [ |
您想要按照date
屬性對這些活動進行排序。
您可以使用Array
的sort()
方法,該方法接受一個回調函數,該函數將兩個對像作為參數(我們稱之為a
和b
):
1 | const sortedActivities = activities.sort((a, b) => b.date - a.date) |
當我們返回一個正值時,該函數向sort()
表示對象b
在排序中優先於對象a
。返回負值則相反。
sort()
方法返回一個新的排序數組,但它也在原地對原始數組進行排序。因此,sortedActivities
和activities
數組都已經排序。保護原始數組免於被修改的一種方法是在排序之前使用slice()
方法創建數組的副本,如下所示:
1 | const sortedActivities = activities.slice().sort((a, b) => b.date - a.date) |
tags: [“JavaScript”, “array sorting”, “date sorting”]