JS对日期的操作

 项目需要一个这样的功能:可以通过选择框条件选择日期范围。从网上找了这些代码,功能很容易实现了。

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;  //    
    
//格式化日期:yyyy-MM-dd    
function 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 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 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);    
}

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值