Js中关于日期转换格式的问题——Date().format()

让博主费劲脑汁的一个东西:不想手写,最后方法中还是手写,记录下

写Js时,有个地方用到日期,要求是yyyy--MM--dd的格式,于是想到了format函数

//当前时间
var Time = new Date().format("yyyy-MM-dd");

但是当时format是报红的,后来才知道,需要在页面加载js时调用一下时间函数,代码如下:
$(function () {
    datatime();
    
});
//时间函数
function datatime(){
    Date.prototype.format = function(format){
        var o = {
            "M+" : this.getMonth()+1, //month
            "d+" : this.getDate(), //day
            "h+" : this.getHours(), //hour
            "m+" : this.getMinutes(), //minute
            "s+" : this.getSeconds(), //second
            "q+" : Math.floor((this.getMonth()+3)/3), //quarter
            "S" : this.getMilliseconds() //millisecond
        }

        if(/(y+)/.test(format)) {
            format = format.replace(RegExp.$1, (this.getFullYear()+"").substr(4 - RegExp.$1.length));
        }

        for(var k in o) {
            if(new RegExp("("+ k +")").test(format)) {
                format = format.replace(RegExp.$1, RegExp.$1.length==1 ? o[k] : ("00"+ o[k]).substr((""+ o[k]).length));
            }
        }
        return format;
    }
}

猜你喜欢

转载自blog.csdn.net/My_SweetXue/article/details/113716095