首頁 > web前端 > js教程 > 主體

如何在 JavaScript 中只比較兩個日期的日期部分?

Barbara Streisand
發布: 2024-11-11 20:26:03
原創
980 人瀏覽過

How to Compare Only the Date Parts of Two Dates in JavaScript?

比較 JavaScript 中的日期部分

比較兩個日期時,您可能會遇到只想考慮日期部分而忽略時間的情況。以下是如何在 JavaScript 中實現此目的。

錯誤方法

提供的程式碼嘗試透過將使用者輸入日期指派給新的 Date 物件 userDate 來比較日期,但是,它保留了原始時間從現在開始。這會導致比較不正確。

修正方法

要獨立於時間比較日期部分,您需要將使用者輸入日期的時間部分明確設定為零。正確的方法如下:

userDate.setHours(0, 0, 0, 0);
登入後複製

透過這樣做,userDate 物件將僅代表日期部分,您可以使用 > 將其與現在準確地進行比較。

簡化比較

您可以使用更簡單的語法來代替if 條件:

const result = userDate > now;
登入後複製

替代解決方案

另一種方法是建立一個輔助函數來從給定日期物件中提取日期部分:

const getDatePart = (date) => {
  return new Date(date.getFullYear(), date.getMonth(), date.getDate());
};
登入後複製

然後您可以使用==運算符比較兩個日期的日期部分:

const nowDatePart = getDatePart(now);
const userDatePart = getDatePart(userDate);

const result = nowDatePart == userDatePart;
登入後複製

以上是如何在 JavaScript 中只比較兩個日期的日期部分?的詳細內容。更多資訊請關注PHP中文網其他相關文章!

來源:php.cn
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn
作者最新文章
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板