[英]Setting the day of the date to the 1st with moment.js
我正在瀏覽當下的文檔,找不到所需的方法。 在我的解決方案中,我得到的是今天的日期,然后是前一個月和下一個月,但是希望得到該月的第一天和該月的最后一天。
簡而言之,這應該是結果:
21/05/2017
01/04/2017
30/06/2017
我的代碼:
var startDate = moment(date).subtract(1,'months')
var endDate = moment(date).add(1,'months');
只需使用add
和subtract
獲得下個月和上個月,並使用startOf
和endOf
獲得該月的第一天和最后一天。
這里是一個工作示例:
var date = moment([2017, 4, 21]); // one way to get 21/05/2017 // If your input is a string you can do: //var date = moment('21/05/2017', 'DD/MM/YYYY'); var startDate = date.clone().subtract(1, 'month').startOf('month'); var endDate = date.clone().add(1, 'month').endOf('month'); console.log(startDate.format('DD/MM/YYYY')); // 01/04/2017 console.log(endDate.format('DD/MM/YYYY')); // 30/06/2017
<script src="https://cdnjs.cloudflare.com/ajax/libs/moment.js/2.18.1/moment.min.js"></script>
您可以使用moment().startOf('month')
和moment().endOf('month')
方法
let startDate = moment().startOf('month').subtract(1, 'months').toDate()
let endDate = moment().endOf('month').add(1, 'months').toDate()
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.