JavaScript 获取本月天数及其他常用方法

来源:互联网 发布:王丽坤 于和伟 知乎 编辑:程序博客网 时间:2024/05/17 08:14

本篇所述方法有总结有摘抄,但摘抄出处现已不详,未能注明,特此声明

获取本月天数

function getDayCount() {    var date = new Date();    var year = date.getFullYear(); //获取完整的年份(4位,1970-????)    var month = date.getMonth()+1; //获取当前月份(0-11,0代表1月)    var  day = new Date(year,month,0);    var daycount = day.getDate()-1;    return daycount;
}

获取指定时间的日期

function getDay(day) {    var today = new Date();    var targetday_milliseconds = today.getTime() + 1000 * 60 * 60 * 24 * day;    today.setTime(targetday_milliseconds); //注意,这行是关键代码    var tYear = today.getFullYear();    var tMonth = today.getMonth();    var tDate = today.getDate();    tMonth = doHandleMonth(tMonth + 1);    tDate = doHandleMonth(tDate);    return tYear + "-" + tMonth + "-" + tDate;}function doHandleMonth(month) {    var m = month;    if (month.toString().length == 1) {        m = "0" + month;    }    return m;}
调用方法:       var today = getDay(-0); // 今天日期var yesterday = getDay(-1); // 昨天日期以此类推...

其他时间节点日期获取

var now = new Date(); //当前日期var nowDayOfWeek = now.getDay(); //今天本周的第几天var nowDay = now.getDate(); //当前日var nowMonth = now.getMonth(); //当前月var nowYear = now.getYear(); //当前年nowYear += (nowYear < 2000) ? 1900 : 0; //var lastMonthDate = new Date(); //上月日期lastMonthDate.setDate(1);lastMonthDate.setMonth(lastMonthDate.getMonth() - 1);var lastYear = lastMonthDate.getYear();var lastMonth = lastMonthDate.getMonth();//格式化日期:yyyy-MM-ddfunction formatDate(date) {    var myyear = date.getFullYear();    var mymonth = date.getMonth() + 1;    var myweekday = date.getDate();    if (mymonth < 10) {        mymonth = "0" + mymonth;    }    if (myweekday < 10) {        myweekday = "0" + myweekday;    }    return (myyear + "-" + mymonth + "-" + myweekday);}//获得某月的天数function getMonthDays(myMonth) {    var monthStartDate = new Date(nowYear, myMonth, 1);    var monthEndDate = new Date(nowYear, myMonth + 1, 1);    var days = (monthEndDate - monthStartDate) / (1000 * 60 * 60 * 24);    return days;}//获得本季度的开始月份function getQuarterStartMonth() {    var quarterStartMonth = 0;    if (nowMonth < 3) {        quarterStartMonth = 0;    }    if (2 < nowMonth && nowMonth < 6) {        quarterStartMonth = 3;    }    if (5 < nowMonth && nowMonth < 9) {        quarterStartMonth = 6;    }    if (nowMonth > 8) {        quarterStartMonth = 9;    }    return quarterStartMonth;}//获得本周的开始日期function getWeekStartDate() {    var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);    return formatDate(weekStartDate);}//获得本周的结束日期function getWeekEndDate() {    var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));    return formatDate(weekEndDate);}//获得上周的开始日期function getLastWeekStartDate() {    var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 7);    return formatDate(weekStartDate);}//获得上周的结束日期function getLastWeekEndDate() {    var weekEndDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 1);    return formatDate(weekEndDate);}//获得本月的开始日期function getMonthStartDate() {    var monthStartDate = new Date(nowYear, nowMonth, 1);    return formatDate(monthStartDate);}//获得本月的结束日期function getMonthEndDate() {    var monthEndDate = new Date(nowYear, nowMonth, getMonthDays(nowMonth));    return formatDate(monthEndDate);}//获得上月开始时间function getLastMonthStartDate() {    var lastMonthStartDate = new Date(nowYear, lastMonth, 1);    return formatDate(lastMonthStartDate);}//获得上月结束时间function getLastMonthEndDate() {    var lastMonthEndDate = new Date(nowYear, lastMonth, getMonthDays(lastMonth));    return formatDate(lastMonthEndDate);}//获得本季度的开始日期function getQuarterStartDate() {    var quarterStartDate = new Date(nowYear, getQuarterStartMonth(), 1);    return formatDate(quarterStartDate);}//或的本季度的结束日期function getQuarterEndDate() {    var quarterEndMonth = getQuarterStartMonth() + 2;    var quarterStartDate = new Date(nowYear, quarterEndMonth, getMonthDays(quarterEndMonth));    return formatDate(quarterStartDate);}
0 0
原创粉丝点击