Давайте рассмотрим альтернативу moment.js в Javascript.

Фон
В одном из наших проектов laravel после обновления зависимостей сборка докера внезапно начала выдавать ошибку moment.js.
При отладке я заметил, что moment.js теперь находится в режиме обслуживания и рекомендует использовать разные библиотеки в качестве альтернативы.
Поскольку наши требования к дате и времени не очень сложны, мы решили использовать объект JavaScript по умолчанию Date() и придумали эту статью.
Если вы находите готовые решения для date and time utilities, эта статья для вас.
Давайте создадим решения для даты и времени…
Чему вы научитесь?
- Получить год, месяц, число, день и время
- Первый и последний день месяца
- Сложение и вычитание дня, месяца, года, времени
- Получить и установить часовой пояс для даты
- Получить даты в различных форматах
Введение
Date() — это объект javascript, который содержит все свойства даты и времени, как показано ниже,
new Date(year, month, day, hours, minutes, seconds, milliseconds);
Мы можем получить currentDate как,
const cDate = new Date();
Internationalize API (Intl) очень полезен для преобразования даты и времени.
1. Получить год, месяц, число, день и время
Начиная с простых преобразований, мы получим год, месяц, дату, день и миллисекунды текущей даты.
Точно так же это позволяет нам установить все свойства на заданную дату, используя setFullYear(), setMonth(), setDate() и т. д.
2. Первый день месяца
Для первого дня месяца просто установите год и месяц.

3. Последний день месяца
Для первого дня месяца добавьте 1 к месяцу (что означает следующий месяц) и дату как 0.

4. Добавить день, месяц, год, время
Мы изучили методы set данного Date, чтобы добиться этого, как показано ниже:
5. Вычтите день, месяц, год, время
Точно так же мы можем выполнить вычитание на заданную дату.
6. Получите и установите часовой пояс
Вы можете легко получить текущий часовой пояс, используя Intl’s resolveOptions.
Intl.DateTimeFormat().resolvedOptions().timeZone
Вы можете получить cDate или любую другую дату в заданном часовом поясе.
cDate.toLocaleString('en-US', {
timeZone: 'your timezone',
}),
Окончательный код будет,
7. Получайте даты в различных форматах
Мы будем использовать метод toLocaleString(), реализованный с поддержкой Intl.DateTimeFormat API.
Связанные популярные статьи
Спонсор
Спасибо за любовь, которую вы показываете!
Если вам нравится то, что вы читаете, не упустите шанс поставить 👏 👏👏 ниже — для писателя это означает мир!
Отзывы и предложения приветствуются, добавляйте их в разделе комментариев.
Подпишитесь на Canopas, чтобы получать новости об интересных статьях!