Dayjs: легковесная библиотека для работы с датами в JavaScript
Dayjs - это легковесная JavaScript-библиотека для работы с датами и временем.
Она предоставляет удобные методы для выполнения различных операций с датами, таких как форматирование, парсинг, изменение и сравнение.
Форматирование даты
Одним из наиболее полезных функций Dayjs является форматирование даты. Библиотека предлагает широкий спектр опций форматирования, позволяя легко создавать строковое представление даты, соответствующее вашим требованиям.
const dayjs = require('dayjs');
const currentDate = dayjs();
console.log(currentDate.format('YYYY-MM-DD')); // Выведет текущую дату в формате ГГГГ-ММ-ДД
console.log(currentDate.format('dddd, MMMM Do YYYY, h:mm:ss a')); // Выведет текущую дату в формате "День недели, Месяц День, Год, Час:Минуты:Секунды AM/PM"
console.log(currentDate.format('h:mm a')); // Выведет текущее время в формате Часы:Минуты AM/PM
Парсинг даты
Одной из важных функций Dayjs является парсинг даты из строкового представления в объект Dayjs. Метод dayjs() может принимать строку с датой и временем и преобразовывать ее в объект Dayjs.
const dayjs = require('dayjs');
const dateStr = '2021-09-30';
const parsedDate = dayjs(dateStr);
console.log(parsedDate.format('dddd, MMMM Do YYYY')); // Выведет "Четверг, Сентябрь 30 2021"
Работа с относительными датами и временем
Dayjs также предлагает удобные методы для работы с относительными датами и временем, такими как добавление и вычитание интервалов времени.
const dayjs = require('dayjs');
const duration = require('dayjs/plugin/duration');
dayjs.extend(duration);
const currentDate = dayjs();
const tomorrow = currentDate.add(1, 'day');
console.log(tomorrow.format('YYYY-MM-DD')); // Выведет дату завтрашнего дня
const nextWeek = currentDate.add(1, 'week');
console.log(nextWeek.format('dddd, MMMM Do YYYY')); // Выведет дату через одну неделю
const oneHourLater = currentDate.add(1, 'hour');
console.log(oneHourLater.format('h:mm a')); // Выведет время через один час
Сравнение дат и времени
Dayjs также предоставляет мощный API для сравнения дат и времени, позволяя определить, какая дата и время произошли раньше или позже.
const dayjs = require('dayjs');
const date1 = dayjs('2021-08-15');
const date2 = dayjs('2021-08-26');
console.log(date1.isBefore(date2)); // Выведет true
console.log(date2.isAfter(date1)); // Выведет true
Плагины
Dayjs также поддерживает плагины, позволяющие расширить его функциональность. Например, плагин dayjs/plugin/duration добавляет возможность работы с интервалами времени.
В целом, Dayjs - это мощная и гибкая библиотека для работы с датами и временем в JavaScript. Она предоставляет удобные методы для форматирования, парсинга, изменения и сравнения дат и времени. Благодаря своей легковесности, Dayjs является отличным выбором для проектов, где требуется только базовая функциональность работы с датами и временем.