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; //  
            var lastMonthDate = new Date(); //上月日期  
            lastMonthDate.setDate(1);  
            lastMonthDate.setMonth(lastMonthDate.getMonth() - 1);  
            var lastMonth = lastMonthDate.getMonth();  
            //格式化开始日期:yyyy-MM-dd hh:mm:ss 
            this.formatStartDate = function(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 + " " + "00:00:00");  
            }  
            //格式化结束日期:yyyy-MM-dd hh:mm:ss 
            this.formaEndtDate = function(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 + " " + "23:59:59");  
            }  
            //获得某月的天数  
            this.getMonthDays = function(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;  
            }
            // 获取今天的开始时间
            this.getTodayStartDate = function(){
                var todayDate = new Date(nowYear, nowMonth, nowDay);
                return this.formatStartDate(todayDate);
            };
            // 获取今天的结束时间
            this.getTodayEndDate = function(){
                var todayDate = new Date(nowYear, nowMonth, nowDay);
                return this.formaEndtDate(todayDate);
            };
            //获取昨天的开始时间
            this.getYesterdayStartDate = function(){
                var yesterdayDate = new Date(nowYear, nowMonth, nowDay - 1);
                return this.formatStartDate(yesterdayDate);
            };
            //获取昨天的结束时间
            this.getYesterdayEndDate = function(){
                var yesterdayDate = new Date(nowYear, nowMonth, nowDay - 1);
                return this.formaEndtDate(yesterdayDate);
            };
            //获得本周的开始日期  
            this.getWeekStartDate = function() {  
                var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek);  
                return this.formatStartDate(weekStartDate);  
            }  
            //获得本周的结束日期  
            this.getWeekEndDate = function() {  
                var weekEndDate = new Date(nowYear, nowMonth, nowDay + (6 - nowDayOfWeek));  
                return this.formaEndtDate(weekEndDate);  
            }  
            //获得上周的开始日期  
            this.getLastWeekStartDate = function() {  
                var weekStartDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 7);  
                return this.formatStartDate(weekStartDate);  
            }  
            //获得上周的结束日期  
            this.getLastWeekEndDate = function() {  
                var weekEndDate = new Date(nowYear, nowMonth, nowDay - nowDayOfWeek - 1);  
                return this.formaEndtDate(weekEndDate);  
            }  
            //获得本月的开始日期  
            this.getMonthStartDate = function() {  
                var monthStartDate = new Date(nowYear, nowMonth, 1);  
                return this.formatStartDate(monthStartDate);  
            }  
            //获得本月的结束日期  
            this.getMonthEndDate = function() {  
                var monthEndDate = new Date(nowYear, nowMonth, this.getMonthDays(nowMonth));  
                return this.formaEndtDate(monthEndDate);  
            }  
            //获得上月开始时间  
            this.getLastMonthStartDate = function() {  
                var lastMonthStartDate = new Date(nowYear, lastMonth, 1);  
                return this.formatStartDate(lastMonthStartDate);  
            }  
            //获得上月结束时间  
            this.getLastMonthEndDate = function() {  
                var lastMonthEndDate = new Date(nowYear, lastMonth, this.getMonthDays(lastMonth));  
                return this.formaEndtDate(lastMonthEndDate);  
            }  
            //快捷时间 今天的value值
            this.btnTimeClick = function (btn) {
                this.changeFalse(this.staticPeriodObj);
                btn.selected = true;
                this.dateobj = this.dateobj1 = ''
                this.pagerc.page = 1;
                delete this.searchs.startTime;
                delete this.searchs.endTime
                switch(btn.value){
                    case 0 : this.searchs.startTime = this.getTodayStartDate()
                             this.searchs.endTime = this.getTodayEndDate()
                        break
                    case 1 : this.searchs.startTime = this.getYesterdayStartDate()
                             this.searchs.endTime = this.getYesterdayEndDate()
                        break
                    case 2 : this.searchs.startTime = this.getWeekStartDate()
                             this.searchs.endTime = this.getWeekEndDate()
                        break
                    case 3 : this.searchs.startTime = this.getLastWeekStartDate()
                             this.searchs.endTime = this.getLastWeekEndDate()
                        break
                    case 4 : this.searchs.startTime = this.getMonthStartDate()
                             this.searchs.endTime = this.getMonthEndDate()
                        break
                    case 5 : this.searchs.startTime = this.getLastMonthStartDate()
                             this.searchs.endTime = this.getLastMonthEndDate()
                        break
                }
                
            };

 

  • 0
    点赞
  • 3
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值