js計算日期相差天數 momentjs 一周開始結束


### 最簡單的辦法是用momentjs http://momentjs.cn/

比如指定日期加30天
moment("2019-02-01").add(30,"days").format("YYYY-MM-DD");

指定日期減6天
moment().subtract(6, "days").format("YYYY-MM-DD")

兩個日期相差天數
moment("2019-02-01").diff(moment("2019-01-01"),'days');

// 本周 周日 - 周六
let start = moment().startOf('week').format('YYYY-MM-DD'); 
let end = moment().endOf('week').format('YYYY-MM-DD'); 
// 本周 周一 - 周日
從周一開始 moment().startOf('week').add(1, 'day').format('YYYY-MM-DD'); 
從周日結束moment().endOf('week').add(1, 'day').format('YYYY-MM-DD'); 
 
// 本月
let start = moment().startOf('month').format('YYYY-MM-DD'); 
let end = moment().endOf('month').format('YYYY-MM-DD'); 
 
// 本年
let start = moment().startOf('year').format('YYYY-MM-DD'); 
let end = moment().endOf('year').format('YYYY-MM-DD'); 

  

###下面是普通js方法:

日期不能直接相加減比較大小,需要轉換一下然后計算最后轉換成天,當然,你也可以根據同樣類似的方法去轉換成小時,或者月,年。

function DateDiff(sDate1, sDate2) { //sDate1和sDate2是2017-09-25格式
var aDate, oDate1, oDate2, iDays;
aDate = sDate1.split("-");
oDate1 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]); //轉換為09-25-2017格式
aDate = sDate2.split("-");
oDate2 = new Date(aDate[1] + '-' + aDate[2] + '-' + aDate[0]);
iDays = parseInt(Math.abs(oDate1 - oDate2) / 1000 / 60 / 60 / 24); //把相差的毫秒數轉換為天數
return iDays;
}

//調用
s1 = "2017-09-25";
s2 = "2017-01-05";
alert(DateDiff(s1,s2));
 
 


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM