簡體   English   中英

在 JavaScript 中確定日期是否為今天的最佳方法是什么?

[英]What is the best way to determine if a date is today in JavaScript?

我在 JavaScript 中有一個日期對象,我想確定該日期是否是今天。 這樣做的最快方法是什么?

我擔心的是比較日期對象,因為一個人的時間可能與另一個不同,但今天日期的任何時間都應該返回true

您可以使用toDateString

var d = new Date()
var bool = (d.toDateString() === otherDate.toDateString());

我認為基於toDateString()的答案會起作用,但我個人會避免使用它們,因為它們基本上問錯了問題。

這是一個簡單的實現:

function areSameDate(d1, d2) {
    return d1.getFullYear() == d2.getFullYear()
        && d1.getMonth() == d2.getMonth()
        && d1.getDate() == d2.getDate();
}

如果這不是您所需要的, MDN對 JS 日期對象 API 有一個不錯的概述。

var someDate = new Date("6 Dec 2011").toDateString();
var today = new Date().toDateString();
var datesAreSame = (today === someDate);

如果兩者都是 Date() 對象,則可以使用它來“格式化”日期,使其僅在年/月/日上進行比較: if(inputDate.setHours(0,0,0,0) == todaysDate.setHours(0,0,0,0));

幾乎相同的問題: 如何檢查輸入日期是否等於今天的日期?

我更喜歡使用時刻庫

moment('dd/mm/yyyy').isSame(Date.now(), 'day');

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM