一、日期格式化
日期比較的首要條件是將日期轉換成可比較的格式。在JavaScript中,我們常用的日期格式為年-月-日(YYYY-MM-DD)和秒數(1970年1月1日起的毫秒數)。日期格式化包括兩個方面:將日期對象轉換為字元串和將字元串轉換為日期對象。
1.將日期對象轉換為字元串
const now = new Date(); console.log(now.toISOString()); // 輸出:2021-04-30T05:44:51.340Z
使用toISOString()方法將日期對象轉換為ISO標準的日期字元串。除了toISOString()方法,還可以使用toLocaleDateString()、toLocaleString()等方法,不同的方法適用於不同的場景。
2.將字元串轉換為日期對象
const dateString = '2021-04-30'; const date = new Date(dateString); console.log(date); // 輸出:Fri Apr 30 2021 08:00:00 GMT+0800 (中國標準時間)
使用Date()構造函數將字元串轉換為日期對象。需要注意的是,字元串的格式必須符合ISO標準,否則會出現不可預知的錯誤。
二、日期比較
日期比較是指對兩個日期進行大小比較或間隔計算。在JavaScript中,我們可以使用比較運算符(>、<、==等)進行大小比較,使用數學運算符進行間隔計算。
1.日期大小比較
const date1 = new Date('2021-04-30'); const date2 = new Date('2021-05-01'); if (date1 < date2) { console.log('date1 在 date2 之前') } else { console.log('date1 在 date2 之後') }
使用比較運算符對兩個日期進行大小比較。在比較大小之前,需要將日期轉換為可比較的格式(比如毫秒數或UTC時間戳)。
2.日期間隔計算
const date1 = new Date('2021-04-30'); const date2 = new Date('2021-05-01'); const interval = Math.abs(date2 - date1) / (1000 * 60 * 60 * 24); console.log(interval); // 輸出:1
使用數學運算符對兩個日期進行間隔計算。需要注意的是,日期之間的間隔計算需要將日期轉換為毫秒數,再進行數學運算。
三、日期運算
日期運算是指對一個日期進行增減操作,得到一個新的日期。在JavaScript中,我們可以使用set方法和get方法對日期對象進行操作。
1.日期增減操作
const date = new Date(); date.setFullYear(date.getFullYear() + 1); console.log(date.toISOString()); // 輸出:2022-04-30T05:44:51.340Z
使用set方法對日期對象進行增減操作。set方法包括setFullYear()、setMonth()、setDate()等,表示對年、月、日等不同部分進行操作。
2.獲取日期部分
const date = new Date(); const year = date.getFullYear(); const month = date.getMonth() + 1; const day = date.getDate(); console.log(`${year}-${month}-${day}`); // 輸出:2021-04-30
使用get方法獲取日期對象的不同部分。get方法包括getFullYear()、getMonth()+1、getDate()等,注意getMonth()方法返回的是0~11之間的整數,需要加1才是實際月份。
原創文章,作者:HLMQI,如若轉載,請註明出處:https://www.506064.com/zh-tw/n/317852.html