如何在JavaScript中按日期值對數組進行排序

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