首页 > Web开发 > 详细

用js解析经json序列化后的C#的DateTime类型数据

时间:2014-06-14 13:57:41      阅读:432      评论:0      收藏:0      [点我收藏+]

用js解析经json序列化后的C#的DateTime类型数据

 (2012-09-21 19:36:03)
标签: 

杂谈

分类: javascript

// val为经json直接序列化后的C#的DateTime类型的数据
function formatTime(val) {
    var re = /-?\d+/;
    var m = re.exec(val);
    var d = new Date(parseInt(m[0]));
// 按【2012-02-13 09:09:09】的格式返回日期
    return d.format("yyyy-MM-dd hh:mm:ss");
}
// 用于格式化日期显示

【感谢方渡远http://www.cnblogs.com/farawayboat/archive/2011/03/17/1987408.html

直接显示经json序列化后的C#的DateTime类型数据,可能类似:

\/Date(1245398693390)\/

而括号里的那一串数字是自1970年1月1日00:00:00到那个DateTime所表示时间所经过的毫秒数, 因此,

我们可以使用正则表达式把它提取出来,并以此构造出一个Javascript Date对象:

Date.prototype.format = function (format) //author: meizz
{
    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;
}

用js解析经json序列化后的C#的DateTime类型数据,布布扣,bubuko.com

用js解析经json序列化后的C#的DateTime类型数据

原文:http://www.cnblogs.com/wangxiuhui/p/3788120.html

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!