> Какой числовой формат даты подходит для сравнения объектов Date в JavaScript (JavaScript)
Уровень: senior · Роль: frontend · Категория: Технические вопросы
Компании: ITFB
Стек: JavaScript
> Пример ответа
Для сравнения объектов Date в JavaScript не требуется преобразовывать их в числовой формат - объекты даты сравниваются напрямую с помощью операторов <, >, <=, >=. Однако, если нужно получить числовое представление для сравнения (например, для сортировки или передачи в API), наиболее подходящим является timestamp в миллисекундах (число миллисекунд, прошедших с 1 января 1970 года UTC). Его можно получить через date.getTime() или +date.
Пример:
JAVASCRIPTconst date1 = new Date('2024-01-01');const date2 = new Date('2024-06-15');// Прямое сравнениеconsole.log(date1 < date2); // true// Числовое сравнение через timestampconsole.log(date1.getTime() < date2.getTime()); // true
Такой формат гарантирует корректное сравнение независимо от часового пояса и формата ввода, так как getTime() возвращает абсолютное значение в UTC. Другие числовые форматы (например, YYYYMMDD) могут привести к ошибкам из-за временных зон или неоднозначности.
> Похожие задачи по frontend
Какие подводные камни есть при использовании ссылочных типов в JavaScript кроме сравнения
Как реализовать функцию-обертку runOnce в JavaScript, вызывающую функцию только один раз?
Почему garbage collector не очищает переменную в случае замыкания в JavaScript
Как сделать так, чтобы функция в Map могла быть удалена сборщиком мусора в JavaScript
> ГОТОВЫ К СЛЕДУЮЩЕМУ СОБЕСЕДОВАНИЮ?
Запустите тренировочную сессию с ИИ и получите детальную обратную связь, чтобы увереннее проходить реальные интервью