JavaScript:
日付を比較する
How to: (方法)
// 日付オブジェクトを生成
const date1 = new Date('2023-04-01T00:00:00');
const date2 = new Date('2023-04-10T00:00:00');
// 日付を比較
if(date1 < date2) {
console.log('date1はdate2より前です。');
} else if(date1 > date2) {
console.log('date1はdate2より後です。');
} else {
console.log('date1とdate2は同じです。');
}
// 出力:date1はdate2より前です。
Deep Dive (深掘り)
日付の比較は基本的に数値の比較です。JavaScriptでは内部的に日付はミリ秒で数えられているからです。この数値は1970年1月1日00:00:00 UTCからの経過ミリ秒数です。getTime()
メソッドでこの値を取得できます。そうすればより明確な比較が可能です。また、ライブラリを使うともっと簡単です。例えばMoment.jsやDate-fnsは強力な日付処理機能を提供します。しかし、多くの場合、JavaScriptの標準機能で十分です。
See Also (関連情報)
- MDN Web Docs: Dateオブジェクト - https://developer.mozilla.org/ja/docs/Web/JavaScript/Reference/Global_Objects/Date
- Moment.js公式サイト - https://momentjs.com/
- Date-fnsライブラリー - https://date-fns.org/