Подтвердить что ты не робот

Каков наилучший способ определить, существует ли сегодня дата в JavaScript?

У меня есть объект даты в JavaScript, и я хочу выяснить, установлена ​​ли эта дата сегодня. Каков самый быстрый способ сделать это?

Моя забота заключалась в сравнении объекта даты, так как каждый может иметь другое время, чем другое, но любое время на сегодняшний день должно возвращать true.

4b9b3361

Ответ 1

Вы можете использовать toDateString:

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

Ответ 2

Ответы, основанные на toDateString(), будут работать, я думаю, но я лично избегал бы их, поскольку они в основном задают неправильный вопрос.

Вот простая реализация:

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

MDN имеет достойный обзор API объекта JS Date, если это не совсем то, что вам нужно.

Ответ 3

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

Ответ 4

Если оба являются объектами Date(), вы можете использовать это для "форматирования" даты таким образом, чтобы она сравнивалась только по году/месяцу/дню: if(inputDate.setHours(0,0,0,0) == todaysDate.setHours(0,0,0,0));

Почти идентичный вопрос: Как проверить, соответствует ли входная дата сегодняшней дате?

Ответ 5

Я предпочитаю использовать момент lib

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