Проверка даты стала проще с помощью JavaScript: подробное руководство

Когда дело доходит до работы с датами в JavaScript, проверка дат «от» и «до» является обычной задачей. В этой статье мы рассмотрим различные методы проверки этих дат с помощью функции Date.parse(). По ходу дела мы будем предоставлять примеры кода, которые помогут вам легко понять концепцию.

Метод 1: базовая проверка даты
Самый простой способ проверить дату — напрямую использовать Date.parse(). Он возвращает количество миллисекунд с 1 января 1970 года для заданной строки даты. Если дата недействительна, возвращается NaN.

const fromDate = "2022-01-01";
const toDate = "2022-01-31";
if (!isNaN(Date.parse(fromDate)) && !isNaN(Date.parse(toDate))) {
  // Dates are valid
  console.log("Dates are valid");
} else {
  // Dates are invalid
  console.log("Invalid dates");
}

Метод 2: пользовательская проверка даты
Если вам нужно обеспечить соблюдение определенных форматов даты, вы можете использовать регулярные выражения для проверки входной строки перед ее анализом с помощью Date.parse(). Этот метод позволяет вам определить собственный формат даты и убедиться, что вводимые данные соответствуют ему.

const dateRegex = /^\d{4}-\d{2}-\d{2}$/;
const fromDate = "2022-01-01";
const toDate = "2022-01-31";
if (dateRegex.test(fromDate) && dateRegex.test(toDate)) {
  // Dates are valid
  console.log("Dates are valid");
} else {
  // Dates are invalid
  console.log("Invalid dates");
}

Метод 3: проверка диапазона дат
В некоторых случаях вам также может потребоваться проверить, что дата «от» не превышает дату «по». Этого можно добиться, сравнив проанализированные значения, полученные из Date.parse().

const fromDate = "2022-01-01";
const toDate = "2022-01-31";
const parsedFromDate = Date.parse(fromDate);
const parsedToDate = Date.parse(toDate);
if (!isNaN(parsedFromDate) && !isNaN(parsedToDate) && parsedFromDate <= parsedToDate) {
  // Dates are valid and "from" date is not greater than "to" date
  console.log("Dates are valid");
} else {
  // Dates are invalid or "from" date is greater than "to" date
  console.log("Invalid dates or 'from' date is greater than 'to' date");
}

Проверка дат «от» и «до» в JavaScript имеет решающее значение во многих приложениях. Используя функцию Date.parse()вместе с дополнительными проверками, вы можете убедиться, что даты имеют правильный формат и находятся в желаемом диапазоне. Не забудьте учитывать ваши конкретные требования и соответствующим образом корректировать методы проверки.

Следуя методам, описанным в этой статье, вы сможете уверенно выполнять проверку даты в JavaScript, гарантируя точный и безошибочный ввод данных от пользователей.