JS时间的处理集锦

1,获取当前日期

    //获取当前日期
        function getCurrDate() {
            var myDate = new Date;
            var year = myDate.getFullYear(); //年
            var mon = check(myDate.getMonth()+ 1)   //月
            var date =check(myDate.getDate())  ; //日
            var Hours = check( myDate.getHours());       // 获取当前小时数(0-23)
            var Minutes =check( myDate.getMinutes()) ;     // 获取当前分钟数(0-59)
            var Seconds = check(myDate.getSeconds());     // 获取当前秒数(0-59)
            return year + "-" + mon + "-" + date+ " "+Hours +":"+ Minutes +":"+ Seconds;
        }   
 
       function check(a){  
        if(a<9){   return "0"+a ; }
           else{  return a;      }	
        }  

2,获取前后几天

//获取当前日期后五天,
        function getCurrDate() {
            var myDate = new Date;
            myDate.setDate(myDate.getDate()+5);  //加上了五天
            var year = myDate.getFullYear(); //获取当前年
            var mon = check(myDate.getMonth()+ 1)   //获取当前月
            var date =check(myDate.getDate())  ; //获取当前日
            var Hours = check(myDate.getHours());       // 获取当前小时数(0-23)
            var Minutes =check(myDate.getMinutes()) ;     // 获取当前分钟数(0-59)
            var Seconds = check(myDate.getSeconds());     // 获取当前秒数(0-59)
            return year + "-" + mon + "-" + date+ " "+Hours +":"+ Minutes +":"+ Seconds;
        }    

     function check(a){  if(a<9){ return "0"+a }else{ return a}	  }   

3,UTC时间格式转换

var d = new Date();  
var UTCStr= d.toUTCString();  //得到UTC时间 
new Date(UTCStr).toLocaleDateString()   //转为本地时间,转为UTC也是同样的

4,时间戳转换

var timestamp = Date.parse(new Date()); //1,精确到秒 
new Date(parseInt(n) * 1000).toLocaleString();   //转为本地时间 

var timestamp = (new Date()).valueOf(); //2,精确到毫秒
 new Date(parseInt(n) * 1000).toLocaleString().substr(0,17) //转为本地时间 

var timestamp=new Date().getTime(); //3,精确到毫秒 
new Date(parseInt(timestamp) * 1000).toLocaleString(); // 转为本地时间 

5,处理后台响应的datetime时间

//转为时间戳
function ConvertJSONDateToJSDateObject(jsondate) { 
    var date = new Date(parseInt(jsondate.replace("/Date(", "").replace(")/", ""), 10));
    return date ;
}

6,时间戳转为时间格式

function timestampToTime(timestamp) {
        var date = new Date(timestamp);
        Y = date.getFullYear() + '-';
        M = (date.getMonth() + 1 < 10 ? '0' + (date.getMonth() + 1) : date.getMonth() + 1) + '-';
        D = (date.getDate() < 10 ? '0' + date.getDate() : date.getDate()) + ' ';
        h = (date.getHours() < 10 ? '0' + date.getHours() : date.getHours()) + ':';
        m = (date.getMinutes() < 10 ? '0' + (date.getMinutes()) : date.getMinutes()) + ':';
        s = (date.getSeconds() < 10 ? '0' + (date.getSeconds()) : date.getSeconds());
        return Y + M + D + h + m + s;
    }

7,获取本周的周一和周日的日期

 function getThisWeek() {
        var now = new Date("2023-01-19 00:00:00");
        var nowTime = now.getTime();
        var day = now.getDay();
        var oneDayTime = 86400 * 1000;
        //var MondayTime = nowTime - (day + 6) * oneDayTime;//上周的周一
        var MondayTime = nowTime - (day - 1) * oneDayTime;//本周的周一 
        //var SundayTime = nowTime +(0-day)*oneDayTime;//上周的周日
        var SundayTime = nowTime + (7 - day) * oneDayTime;//本周的周日
        //初始化日期时间
        var monday = new Date(MondayTime);
        var sunday = new Date(SundayTime);
        var time = new Date(monday);
        var y = time.getFullYear();
        var m = check(time.getMonth() + 1);
        var d = time.getDate();
        var start = y + "-" + m + "-" + d + " 00:00:00";
        time = new Date(sunday);
        y = time.getFullYear();
        m = check(time.getMonth() + 1);
        d = time.getDate();
        var end = y + "-" + m + "-" + d + " 23:59:59";
        var sz = [];
        sz.push(start);
        sz.push(end);
        return sz;
    }

8,获取本月的第一天和最后一天的日期

    function getThisMonth() {
        var dateStart = new Date();
        var d = dateStart.setDate(1);
        var s = timestampToTime(d).split(" ")[0] + " 00:00:00";

        var dateEnd = new Date();
        var temp = new Date(dateEnd.getFullYear(), dateEnd.getMonth() + 1, 0);
        var e = timestampToTime(Date.parse(temp)).split(" ")[0] + " 23:59:59";;

        var sz = [];
        sz.push(s);
        sz.push(e);
        return sz;
    }

8,获取当天,前后几天的日期

    //获取其他日期 (d=0 今天)(后五天 d=5)(前5天 d=-5)
    function getOtherDate(d) {
        var myDate = new Date;
        myDate.setDate(myDate.getDate() + d);
        var year = myDate.getFullYear(); //获取当前年
        var mon = check(myDate.getMonth() + 1)   //获取当前月
        var date = check(myDate.getDate()); //获取当前日
        var Hours = check(myDate.getHours());       // 获取当前小时数(0-23)
        var Minutes = check(myDate.getMinutes());     // 获取当前分钟数(0-59)
        var Seconds = check(myDate.getSeconds());     // 获取当前秒数(0-59)
        return year + "-" + mon + "-" + date + " " + Hours + ":" + Minutes + ":" + Seconds;
    }

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

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值