Moment: Получить последний день месяца?

Созданный на 30 мар. 2012  ·  10Комментарии  ·  Источник: moment/moment

Было бы здорово иметь возможность получать / устанавливать экземпляр момента на последний день месяца - аналогично eod.

New Feature

Самый полезный комментарий

moment().endOf('month');

работает с 1.7

Все 10 Комментарий

Думаю, сейчас это работает:
момент (). add ('месяцы', 1) .date (1) .subtract ('дни', 1)

Кроме того, сеттеры переполняются, если они находятся вне диапазона.

moment().date(0); // the last day of last month
moment().date(-1); // the second to last day of last month
moment().hours(25); // 1 am the next day

Итак, вы могли бы сделать что-то вроде этого ...

moment().add('months', 1).date(0);
moment().endOf('month');

работает с 1.7

moment().endOf('month');

или

moment(year-month-day).endOf('month');

@ lance-ding Спасибо! Это было определенно полезно.

Я все еще думаю, что было бы неплохо иметь опцию .format() для количества дней в текущем месяце.

Связанный: вы также можете использовать moment().daysInMonth() чтобы получить целое число, представляющее последний день месяца.

Связанный:

Предупреждение об устаревании:
moment().add(period, number) is deprecated. Please use moment().add(number, period).

Итак, небольшое изменение кода: moment().add(1, 'months').date(1).subtract('days', 1)

@gideonapollob , .subtract() .

Но .endOf() почти наверняка лучший выбор для того, что вы делаете.

Вы можете получить последний день месяца. нравится.

moment(2017-10).endOf('month').format('DD')

который показывает последнюю дату в прошлом месяце

момент (). subtract (1, 'месяцы'). endOf ('месяц'). формат ('ДД-ММ-ГГГГ')

Была ли эта страница полезной?
0 / 5 - 0 рейтинги