JavaScriptで日付値で配列を並べ替える方法

JavaScriptでアイテムの配列を日付値で並べ替える方法をご覧ください

このようなオブジェクトの配列があり、次のセットが含まれているとします。日付オブジェクト

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プロパティ。

あなたは使用することができますsort()の方法Array、はコールバック関数を取ります。これは、配列に含まれる2つのオブジェクトをパラメーターとして受け取ります(これを呼び出します)。aそしてb):

const sortedActivities = activities.sort((a, b) => b.date - a.date)

正の値を返すと、関数は次のように通信します。sort()そのオブジェクトbオブジェクトよりもソートが優先されますa。負の値を返すと、逆になります。

ザ・sort()メソッドは新しい並べ替えられた配列を返しますが、元の配列もその場で並べ替えます。したがって、両方sortedActivitiesそしてactivities配列がソートされるようになりました。元のアレイが変更されないように保護する1つのオプションは、slice()次のように、並べ替えの前に配列のコピーを作成する方法:

const sortedActivities = activities.slice().sort((a, b) => b.date - a.date)

私の無料ダウンロードJavaScriptビギナーズハンドブック


その他のjsチュートリアル: