任意字符串转换成日期

 

任意字符串转换成日期

     Date.prototype.FormatStr = function (fmt) { //author: meizz
    var o = {
        "y+": this.getFullYear(),
        "M+": (this.getMonth() + 1) < 10 ? "0" + (this.getMonth() + 1) : (this.getMonth() + 1), //月份
        "d+": this.getDate() < 10 ? "0" + this.getDate() : this.getDate(), //日
        "h+": this.getHours() < 10 ? "0" + this.getHours() : this.getHours(), //小时
        "m+": this.getMinutes() < 10 ? "0" + this.getMinutes() : this.getMinutes(), //分
        "s+": this.getSeconds() < 10 ? "0" + this.getSeconds() : this.getSeconds(), //秒
    };
    var fmt = fmt
    for (var key in o) {
        fmt = fmt.replace(new RegExp("(" + key + ")", "g"), function (a, b) {
            return o[key]
        })
    }
    return fmt;

}

// console.log(new Date().FormatStr("yyyy-MM-dd hh:mm:ss"))

String.prototype.ToDate = function (fmt) {
    var o = {
        "y": "",
        "M": "",
        "d": "",
        "h": "",
        "m": "",
        "s": "",
    };
    var k = {
        "y": "setFullYear",
        "M": "setMonth",
        "d": "setDate",
        "h": "setHours",
        "m": "setMinutes",
        "s": "setSeconds",
    };
    var fmt = fmt + "";
    for (var key in o) {
        var index = fmt.indexOf(key);
        var lastIndex = fmt.lastIndexOf(key);
        o[key] = +this.substring(index, lastIndex + 1)
        if (key == "M") {
            o[key] = o[key] - 1
        }
    }
    var date = new Date();
    for (var kkk in k) {
        date[k[kkk]].call(date, o[kkk])
    }
    return date
}
//"2018-12-01 11:11:11".ToDate("yyyy-MM-dd hh:mm:ss") 日期字符串的格式  一定要和ToDate的参数格式一样   支持到秒



    
         按F12键进行查看
        如需协助请联系我 qq:2561179983

原文地址:http://zhifubao.masao.top:8282/assets/date.html
原文地址:https://www.cnblogs.com/lguow/p/10039717.html