«Moment.js — это библиотека манипулирования датами JavaScript для синтаксического анализа, проверки, манипулирования и отображения дат». - Официально сказано
Эта библиотека обработки данных в основном реализует принцип «маленький и красивый».В основном, есть операции и форматирование дат, о которых вы только можете подумать, поддержка преобразования нескольких языков и официальные китайские документы.
Я использовал эту библиотеку, потому что в моей работе нужно создать календарь цен вручную.Я искал библиотеку, которая мне не понравилась.Во время поиска я обнаружил, что несколько компонентов календаря с открытым исходным кодом используют эту библиотеку.
Адрес официального документа: http://momentjs.cn/docs/. В документе слишком много методов. Вот несколько часто используемых методов, включая построение объекта даты, форматирование даты, добавление и вычитание даты, а также дату , год, месяц и день Замена может в основном реализовать все функции, которые должен иметь календарь.
moment(string)
- Возвращает объект типа moment, который эквивалентен конструктору объекта даты.
- Вы можете проверить правильность даты и распознать разные строки
- Если параметр не указан, вернуть сегодня по умолчанию
moment('2017 02 03')
moment('2017-1-3')
moment('2017 1 1')
[moment].format('YYYY-MM-DD')
- Получение момента типа, возвращает строку отформатированной
- Параметр определяет, как форматировать строку (см. официальную документацию для получения подробной информации о входных параметрах).
moment('2018 1 1').format('YYYY-MM')
=> '2018-01'
moment().format("dddd, MMMM Do YYYY");
=> "Sunday, February 14th 2010"
[moment].add(num, 'year/month/days')
- привет плюс один
- Первый параметр — количество, которое необходимо добавить, второй параметр — добавляемый объект.
moment('2018-01-01').add(2, 'year')
=> '2020-01-01'
[moment].subtract(num, 'years/months/days')
- минус один
[moment].set('year/month/date', num)
- Пусть установленная часть будет num
- Обратите внимание, что месяц 0-11
- Преимущество использования этого для установки года, месяца и дня заключается в том, что будут покрыты некоторые недопустимые значения, такие как
moment('2013-01-31').set('month', 1).format('YYYY-MM-DD')
=> '2013-02-28' //二月只到28号
[moment].diff([moment], 'days/months/years')
- Рассчитать разницу день/месяц/год
moment(departureDate).diff(moment(), 'days');
[moment].isBetween(string, string)
- находится ли объект момента между двумя строками даты
moment().isBetween(item.startDate, item.endDate)
[moment].isSame('2010-10-20')
- Сравните, совпадают ли две даты
moment('2010-10-20').isSame('2010-10-20')
Выше приведены лишь некоторые методы, основанные на моем личном опыте. Подробные параметры и дополнительные методы см. в официальной документации http://momentjs.cn/docs/
Я очень ценю эту библиотеку, функциональное написание очень свежее, вы можете узнать, что могут делать методы, просто взглянув на название, граничная защита хорошо написана, а исходный код также аккуратно разделен на функциональные модули, что заставляет людей очень удобно изнутри.