Json Date时间

1 篇文章 0 订阅
1 篇文章 0 订阅

格式时间 {Date:"/Date(1278903921551+0800)/"}

 

parseDate: function (dateStr) {
        function scanDate(obj, dateParser) {
            for (var key in obj) {
                obj[key] = dateParser(key, obj[key]);
                if (typeof (obj[key]) === 'object') {
                    scanDate(obj[key], dateParser);
                }
            }
        }
        function jsonDateParser(key, value) {

            if (typeof value === 'string') {
                var a = (/^\/Date\((\d+)(([\+\-])(\d\d)(\d\d))?\)\//gi).exec(value);
                if (a) {
                    var utcMilliseconds = parseInt(a[1], 10);
                    //utcMilliseconds += ((a[3] == '-') ? -1 : 1) * (parseInt(a[4], 10) + (parseInt(a[5], 10) / 60.0)) * 60 * 60 * 1000;
                    var date = new Date(utcMilliseconds);
                    value = RE.formatDate(date, 'yyyy-MM-dd hh:mm:ss');
                }
            }
            return value;
        }
        var obj = eval('({Date:"' + dateStr + '"})');
        scanDate(obj, jsonDateParser);
        var dateValue = obj["Date"];
        return dateValue;
    },

    formatDate: function (date, format) {
        var o = {
            "M+": date.getMonth() + 1, //month
            "d+": date.getDate(),    //day
            "h+": date.getHours(),   //hour
            "m+": date.getMinutes(), //minute
            "s+": date.getSeconds(), //second
            "q+": Math.floor((date.getMonth() + 3) / 3),  //quarter
            "S": date.getMilliseconds() //millisecond
        }
        if (/(y+)/.test(format)) {
            format = format.replace(RegExp.$1, (date.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;
    }

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值