🙌
JavaScriptで日付を比較する方法
『6月からお知らせを掲載する』とか、
『登録日から1週間だけ送料を無料にする』とか。
ある一定の日を過ぎたら処理を起こしたいとき、日付の比較ってよく使いますよね。
今回はその実装方法を紹介します。
実装方法
new Date()の形にして比較する
日付の比較は、new Date()の形で行いましょう。
そうでないとうまく計算されません。
// 今日のタイムスタンプ
const today = new Date(Date.now());
// Mon Jun 22 2020 00:00:00 GMT+0900 (日本標準時)
const deadline = new Date(2020, 05, 22);
今日の日付はnew Date(Date.now)
。
そして、比較対象となる日(今回は締切日)は、直接new Date()
につっこんでいきます。
ただし、月は0はじまりなので6月としたい場合は『5』を入力してくださいね。
新しい日付のほうが大きい判定になる
if文で比較して分岐する場合、
どっちが大きくなるのか気になりますよね。
日付の場合は、『新しいほど大きい』という判定になります。
なので今回であればif文は以下のようになります。
※月は0始まりなので、以下の場合、deadlineは6月22日になります。
// 今日のタイムスタンプ
const today = new Date(Date.now());
const deadline = new Date(2020, 05, 22);
if(today > deadline){
console.log('締切日を過ぎています。');
} else {
console.log('締切日はまだ過ぎていません。');
}
Discussion