溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

js獲取最近一周一個(gè)月三個(gè)月時(shí)間的示例分析

發(fā)布時(shí)間:2021-12-28 13:06:14 來(lái)源:億速云 閱讀:176 作者:柒染 欄目:開(kāi)發(fā)技術(shù)

js獲取最近一周一個(gè)月三個(gè)月時(shí)間的示例分析,針對(duì)這個(gè)問(wèn)題,這篇文章詳細(xì)介紹了相對(duì)應(yīng)的分析和解答,希望可以幫助更多想解決這個(gè)問(wèn)題的小伙伴找到更簡(jiǎn)單易行的方法。

獲取近一周時(shí)間

var end = new Date();
var year = end.getFullYear();
var month = end.getMonth() + 1;//0-11表示1-12月
var day = end.getDate();
var dateObj = {};
dateObj.end = year + '-' + month + '-' + day;
if (day - 7 <= 0) {   //如果在當(dāng)月7日之前
    var startMonthDay = new Date(year, (parseInt(month) - 1), 0).getDate();    //1周前所在月的總天數(shù)
    if (month - 1 <= 0) { //如果在當(dāng)年的1月份
      dateObj.start = (year - 1) + '-' + 12 + '-' + (31 - (7 - day));
    } else {
      dateObj.start = year + '-' + (month - 1) + '-' + (startMonthDay - (7 - day));
    }
} else {
    dateObj.start = year + '-' + month + '-' + (day - 7);
}
console.log(JSON.stringify(dateObj))
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.

獲取近一個(gè)月時(shí)間

var end = new Date();
var year = end.getFullYear();
var month = end.getMonth() + 1;//0-11表示1-12月
var day = end.getDate();
var dateObj = {};
dateObj.end = year + '-' + month + '-' + day;
var endMonthDay = new Date(year, month, 0).getDate();    //當(dāng)前月的總天數(shù)
if(month - 1 <= 0){ //如果是1月,年數(shù)往前推一年<br>    
    dateObj.start = (year - 1) + '-' + 12 + '-' + day;
}else{
    var startMonthDay = new Date(year, (parseInt(month) - 1), 0).getDate();
    if(startMonthDay < day){    //1個(gè)月前所在月的總天數(shù)小于現(xiàn)在的天日期
        if(day < endMonthDay){        //當(dāng)前天日期小于當(dāng)前月總天數(shù)
            dateObj.start = year + '-' + (month - 1) + '-' + (startMonthDay - (endMonthDay - day));
        }else{
            dateObj.start = year + '-' + (month - 1) + '-' + startMonthDay;
        }
    }else{
        dateObj.start = year + '-' + (month - 1) + '-' + day;
    }
}
console.log(JSON.stringify(dateObj))
1.2.3.4.5.6.7.8.9.10.11.12.13.14.15.16.17.18.19.20.21.22.

獲取近三個(gè)月時(shí)間

var end = new Date();
var year = end.getFullYear();
var month = end.getMonth() + 1;//0-11表示1-12月
var day = end.getDate();
var dateObj = {};
dateObj.end = year + '-' + month + '-' + day;
var endMonthDay = new Date(year, month, 0).getDate();    //當(dāng)前月的總天數(shù)
if(month - 3 <= 0){ //如果是1、2、3月,年數(shù)往前推一年
    var start3MonthDay = new Date((year - 1), (12 - (3 - parseInt(month))), 0).getDate();    //3個(gè)月前所在月的總天數(shù)
    if(start3MonthDay < day){    //3個(gè)月前所在月的總天數(shù)小于現(xiàn)在的天日期
        dateObj.start = (year - 1) + '-' + (12 - (3 - month)) + '-' + start3MonthDay;
    }else{
        dateObj.start = (year - 1) + '-' + (12 - (3 - month)) + '-' + day;
    }
}else{
    var start3MonthDay = new Date(year, (parseInt(month) - 3), 0).getDate();    //3個(gè)月前所在月的總天數(shù)
    if(start3MonthDay < day){    //3個(gè)月前所在月的總天數(shù)小于現(xiàn)在的天日期
        if(day < endMonthDay){        //當(dāng)前天日期小于當(dāng)前月總天數(shù),2月份比較特殊的月份
            dateObj.start = year + '-' + (month - 3) + '-' + (start3MonthDay - (endMonthDay - day));
        }else{
            dateObj.start = year + '-' + (month - 3) + '-' + start3MonthDay;
        }
    }else{
        dateObj.start = year + '-' + (month - 3) + '-' + day;
    }
}
console.log(JSON.stringify(dateObj))

New Date()與setDate()參數(shù)

相信網(wǎng)上已經(jīng)有很多關(guān)于日期的文章了,這里只是我自己再工作中遇到的問(wèn)題然后加以總結(jié);

new Date()

new Date() 一共有六種形式,五種帶參數(shù)的一種不帶參數(shù)的;

  1. new Date();自然不用多說(shuō),默認(rèn)獲取的是當(dāng)前日期。

  2. new Date("month2 dd,yyyy hh:mm:ss"); 注意:參數(shù)是字符形式

  3. new Date("month2 dd,yyyy"); 注意:參數(shù)是字符形式

  4. new Date(yyyy,month3,dd,hh,mm,ss); 注意:參數(shù)不是字符

  5. new Date(yyyy,month3,dd); 注意:參數(shù)不是字符

  6. new Date(ms); 

參數(shù)說(shuō)明:

month2:用英文,表示月份名稱;從January到December ;

dd:表示日期,1-31

yyyy:表示四位表示的年份

hh:mm:ss:表示時(shí)間,時(shí)(0-23)-分(0-59)-秒(0-59)

month3:是Number型的月份;從0-11;即1月到12月

ms:從1970年1月1日之間相差的毫秒數(shù)

特別提醒:有些是字符形式有些不是

關(guān)于js獲取最近一周一個(gè)月三個(gè)月時(shí)間的示例分析問(wèn)題的解答就分享到這里了,希望以上內(nèi)容可以對(duì)大家有一定的幫助,如果你還有很多疑惑沒(méi)有解開(kāi),可以關(guān)注億速云行業(yè)資訊頻道了解更多相關(guān)知識(shí)。

向AI問(wèn)一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

js
AI