如何在JavaScript中比較日期詳解
前言
日期是開發(fā)人員在創(chuàng)建實際應用程序時最常用的數據類型之一。 但通常,開發(fā)人員會在這種數據類型上苦苦掙扎,最終使用像 Moment.js 這樣的日期庫來完成簡單的任務,這些任務不值得安裝整個包所帶來的大包大小。
當我們想到 JavaScript 中的日期比較時,我們會想到使用 Date 對象 ( Date()),當然,它確實有效。
date 對象允許我們使用>, <, =, or>=比較運算符進行比較,但不能使用相等比較運算符,如==, !=, ===, and !==(除非我們將日期方法附加到 date 對象)。
讓我們從學習如何僅使用日期對象執(zhí)行比較開始,然后我們將了解如何使用日期對象和日期方法執(zhí)行相等比較。
如何在 JavaScript 中與日期對象進行日期比較
假設我們想在 JavaScript 中比較兩個日期。我們可以通過這種方式輕松使用 Date 對象 ( Date()):
let date1 = new Date();
let date2 = new Date();
if (date1 > date2) {
console.log("Date 1 is greater than Date 2");
} else if (date1 < date2) {
console.log("Date 1 is less than Date 2");
} else {
console.log("Both Dates are same");
}以上將返回兩個日期相同,因為我們沒有傳遞不同的日期:
"Both Dates are same"
現在讓我們傳入不同的日期值:
let date1 = new Date();
let date2 = new Date("6/01/2022");
if (date1 > date2) {
console.log("Date 1 is greater than Date 2");
} else if (date1 < date2) {
console.log("Date 1 is less than Date 2");
} else {
console.log("Both Dates are same");
}現在將返回以下內容:
"Date 1 is greater than Date 2"
幸運的是,當前兩個條件失敗時,上面將相等作為最后一個選項。但是假設我們嘗試以這種方式將相等作為條件處理:
let date1 = new Date();
let date2 = new Date();
if (date1 === date2) {
console.log("Both Dates are same");
} else {
console.log("Not the same");
}它將返回以下內容,這是錯誤的
"Not the same"
如何使用 JavaScript 進行等式比較
為了處理相等比較,我們使用日期對象和getTime()返回毫秒數的日期方法。但是,如果我們想比較特定的信息,如日、月等,我們可以使用其他日期方法,如getDate()、getHours()、和。getDay()getMonth()getYear()
let date1 = new Date();
let date2 = new Date();
if (date1.getTime() === date2.getTime()) {
console.log("Both are equal");
} else {
console.log("Not equal");
}這將返回:
"Both are equal"
我們可以將不同的日期傳入到日期對象中進行比較:
let date1 = new Date("12/01/2021");
let date2 = new Date("09/06/2022");
if (date1.getTime() === date2.getTime()) {
console.log("Both are equal");
} else {
console.log("Not equal");
}正如預期的那樣,這將返回:
"Not equal"
注意:通過該
getTime()方法,我們可以使用所有比較運算符執(zhí)行所有形式的日期比較,即>、<、<=、>=、==、!=、===和!==。
如何執(zhí)行特定日期比較
假設我們想要比較特定的日期值,比如年份。然后我們可以這樣使用.getYear()日期方法:
let date1 = new Date("06/21/2022").getYear();
let date2 = new Date("07/28/2021").getYear();
if (date1 < date2) {
console.log("Date1 is less than Date2 in terms of year");
} else if (date1 > date2) {
console.log("Date1 is greater than Date2 in terms of year");
} else {
console.log(`Both years are equal`);
}總結
到此這篇關于如何在JavaScript中比較日期的文章就介紹到這了,更多相關JS日期比較內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
TypeScript 引用資源文件后提示找不到的異常處理技巧
這篇文章主要介紹了TypeScript 引用資源文件后提示找不到的異常處理,本文通過實例代碼給大家介紹的非常詳細,對大家的學習或工作具有一定的參考借鑒價值,需要的朋友可以參考下2020-07-07

