JSは現在の月の最後の日に出会う穴を獲得しています.
1174 ワード
最近は前端のカレンダー機能を書いていますが、カレンダーの機能以外に日付計算の需要があります.当月の最後の日を取得して、最初に書いたら大丈夫です.その後、問題が発見されました.大体のコードはこうです.ダテの月は一ヶ月後で、set Dateを通じて0にすれば先月の最後の日がもらえます.
その後、資料を調べて分かりました.
let date = new Date();
date.setMonth(date.getMonth() + 1);
// 0 , 0 1
date.setDate(0);
console.log(' :' + date.toLocaleString())
log
:2019/8/31 3:34:02
すべては順調で、私は早くこの需要を終えました.でも!!!!!!!!物事はそんなに簡単ではないです.自分が退屈している時、1月に問題があることに気づきました.//0 1
let date= new Date(2019, 0, 31);
date.setMonth(date.getMonth() + 1);
// 0 , 0 1
date.setDate(0);
console.log(' :' + date.toLocaleString())
log
:2019/2/28 3:41:18
本来なら、私は日付を1月31日に設定しました.これから1ヶ月を加えたら、2月になるはずです.またset Date(0)を返したら、1月31日に戻るべきです.その後、資料を調べて分かりました.
month + 1, JS :
+
date.setMonth(date.getMonth() + 1) 1 31 + 31 , , 3 3
month + 1 1, 。
この需要の解決方法は毎月の1-28日に日付を設定すればいいです.// 1-28
let date= new Date(2019, 0, 4);
date.setMonth(date.getMonth() + 1);
// 0 , 0 1
date.setDate(0);
console.log(' :' + date.toLocaleString())