js如何获取当月第一天和最后一天

2023-05-16

一/ 获取的是 ***date格式***的当月第一天,最后一天,当天

        var now = new Date() // 当前日期
        var nowYear = now.getFullYear() //当前年
        var nowMonth = now.getMonth() //当前月 (值为0~11)
        var d = now.getDate() //当天
        var firstDay = new Date(nowYear,nowMonth,1)  // 本月开始时间
        var LastDay = new Date(nowYear, nowMonth+1,0); // 本月结束时间
        var toDay = new Date(nowYear,nowMonth,d) // 本月今天
        //如果想获取本月第一天00:00和最后一天23:59
        //var firstDay = new Date(nowYear,nowMonth,1,00,00)
        //var LastDay = new Date(nowYear, nowMonth+1,0, 23,59);
        //var toDay = new Date(nowYear, nowMonth, d, 23,59,59); // 获取今天23时:59分:59秒

注意:

  1. 第三个参数 0和1的区别:
    1)0会转换为:第二个参数的最后一天;
    如new Date(2020,8,0) => 2020年8月31号
    2)1会转换为:第二个参数+1的第一天;
    如new Date(2020,8,1) => 2020年9月1号
    在这里插入图片描述

2.这里输入单双皆可,但是在代码里strict模式输入00会报错,所以如果是单数输入0即可,不用00的形式。
在这里插入图片描述

二 / 获取的是 ***字符串格式***的当月第一天,最后一天,当天

/**
 * 获取当前月份的第一天、当天和最后一天
 **/
function getFirstNowLastDay() {
    var now = new Date();
    var strLink = "-";
    var year = now.getFullYear();
    var month = now.getMonth() + 1;
    var day = now.getDate();
    if (month >= 1 && month <= 9) {
        month = "0" + month;
    }
    if (day >= 1 && day <= 9) {
        day = "0" + day;
    }
    var firstDate = year + strLink + month + strLink + '01';
    var sysDate = year + strLink + month + strLink + day;
    var lastDay = this.getLastDay(year, month);
    var lastDate = year + strLink + month + strLink + lastDay;
    var returnArr = [firstDate, sysDate, lastDate];//以数组形式返回  
    return returnArr; 
}
/**
 * 获取当月的最后一天
 * @param year 年份
 * @param month 月份
 **/
function getLastDay(year,month){
    var new_year = year;
    var new_month = month++;//取下一个月的第一天,方便计算(最后一天不固定)
    if(month>12){//如果当前大于12月,则年份转到下一年
        new_month -=12;//月份减
        new_year++;//年份增
    }
    // 取当年当月对应的下个月的前一天,即当前月的最后一天
    var last_date = new Date(new_year,new_month,0).getDate();
    return last_date;
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

js如何获取当月第一天和最后一天 的相关文章

随机推荐