js将从数据库中获取日期格式"/Date(1333245600000+0800)/" 转换为2018-5-10的方法

当程序异步提交的时候,而且返回是返回json的时候,你这js中接到的时间很可能就是这个样子:"/Date(1333245600000)/",这就是一个字符串,需对此进行格式化

formatter: function (date) {
                   var pa = /.*\((.*)\)/;
                   var unixtime = date.match(pa)[1].substring(0,10);

                   return getTime(unixtime);


函数:function getTime(/** timestamp=0 **/) {

    var ts = arguments[0] || 0;
    var t, y, m, d, h, i, s;
    t = ts ? new Date(ts * 1000) : new Date();
    y = t.getFullYear();
    m = t.getMonth() + 1;
    d = t.getDate();
    h = t.getHours();
    i = t.getMinutes();
    s = t.getSeconds();
    // 可根据需要在这里定义时间格式  
    return y + '-' + (m < 10 ? '0' + m : m) + '-' + (d < 10 ? '0' + d : d)

}



2.field: 'create_time', title: '时间', width: 180, align: 'center', formatter: function (date) {
                       var string_json_date = date;
                       var startIndex = string_json_date.indexOf("(") + 1;
                       var endIndex = string_json_date.indexOf(")");
                       var Date_date = new Date(parseInt(string_json_date.substring(startIndex, endIndex)));
                       return Date_date.format("yyyy-MM-dd hh:mm:ss");

                   }


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;

}



没有更多推荐了,返回首页