Open6
JavaScriptでの日時, Date チートシート
現在の日付と1日後の日付
// 現在の日付
console.log(new Date());
// 1日後の日付
console.log(new Date(new Date().getTime() + 24 * 60 * 60 * 1000));
日時でのSort処理
// startDateの昇順でソート
array.sort(
(a, b) => a.startDate.getTime() - b.startDate.getTime(),
);
ミリ秒値で比較する方法
getTime()メソッドは、1970年1月1日からのミリ秒数を返します。
この数値が一致すれば、日時が完全に同じであることを意味します。
const date1 = new Date('2021-10-01T10:00:00');
const date2 = new Date('2021-10-01T10:00:00');
if (date1.getTime() === date2.getTime()) {
console.log('同じ日時です。');
} else {
console.log('違う日時です。');
}
タイムスタンプで比較する方法
タイムスタンプを直接比較することもできます。
+演算子を使うことで、Dateオブジェクトを数値(タイムスタンプ)に変換できます。
if (+date1 === +date2) {
console.log('同じ日時です。');
} else {
console.log('違う日時です。');
}
特定の要素(年、月、日など)を比較する方法
もし時間を無視して日付だけを比較したい場合は、各要素を個別に比較します。
if (
date1.getFullYear() === date2.getFullYear() &&
date1.getMonth() === date2.getMonth() &&
date1.getDate() === date2.getDate()
) {
console.log('同じ日付です。');
} else {
console.log('違う日時です。');
}
秒数の表現
JavaScriptでは時間の単位としてミリ秒(milliseconds)を使用することが一般的です。
特に、setTimeout や setInterval などのタイマー関連の関数ではミリ秒単位で指定します。
const threeSeconds = 3000; // 3秒をミリ秒で表現
setTimeout(() => {
console.log('3秒後に実行されます');
}, threeSeconds); // 3000ミリ秒 = 3秒