JavaScript中獲得指定日期字符串問題

這個問題很常見,但是一番搜索下來發現都是不全面,原因是日期操作的函數裏有好幾個坑。
網上的資料分兩撥:
有的講了如何獲得字符串 如“2016-07-01”,而日期計算中只用了date.getDate()+daysCount
這樣有很大的缺陷;
有的卻用了毫秒去做日期計算卻沒避開date.getMonth()+1的陷阱;
所以就寫下來備忘:

//獲取常規日期顯示字符串("2016-07-01"形式)參數是JavaScript日期對象
function GetDateNormalStr(date)
{
    var y = date.getFullYear();
    var m = (date.getMonth() + 1) < 10 ? "0" + (date.getMonth() + 1) : (date.getMonth() + 1);//獲取月份的值,不足10補0
    var d = date.getDate() < 10 ? "0" + date.getDate() : date.getDate(); //獲取日期具體日期值,不足10補0
    return y + "-" + m + "-" + d;
}
//獲取經過加減天數運算的常規日期字符串("2016-07-01"形式) 參數1:日期(JavaScript日期對象);參數2:要加減的天數(數字)
function GetDateAddedDaysNomalStr(date,daysCount)
{
    date = date.getTime() + daysCount * 24 * 60 * 60 * 1000;
    var d = new Date(date);
    return GetDateNormalStr(d);
}
發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章