eodと同様に、モーメントインスタンスを月の最後の日に取得/設定できるのは素晴らしいことです。
私は今のところこれがうまくいくと思います:
moment()。add( 'months'、1).date(1).subtract( 'days'、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')
先月の先日を表示します
moment()。subtract(1、 'months')。endOf( 'month')。format( 'DD-MM-YYYY')
最も参考になるコメント
1.7以降で動作します