将json结果转换为日期

可能重复:
如何格式化JSON日期?

我从JavaScript的$ getJSON调用中得到以下结果。 如何在JavaScript中将启动属性转换为适当的日期?

[{“id”:1,“start”:“/ Date(1238540400000)/”},{“id”:2,“start”:“/ Date(1238626800000)/”}]

谢谢!


您需要从字符串中提取数字,并将其传递到Date constructor

var x = [{
    "id": 1,
    "start": "/Date(1238540400000)/"
}, {
    "id": 2,
    "start": "/Date(1238626800000)/"
}];

var myDate = new Date(x[0].start.match(/d+/)[0] * 1);

零件是:

x[0].start                                - get the string from the JSON
x[0].start.match(/d+/)[0]                - extract the numeric part
x[0].start.match(/d+/)[0] * 1            - convert it to a numeric type
new Date(x[0].start.match(/d+/)[0] * 1)) - Create a date object

我使用这个:

function parseJsonDate(jsonDateString){
    return new Date(parseInt(jsonDateString.replace('/Date(', '')));
}

如果你使用jQuery

如果你在客户端使用jQuery,你可能会对这篇博文感兴趣,它提供了如何全局扩展jQuery的$.parseJSON()函数来自动转换日期的代码。

在添加此代码的情况下,您不必更改现有代码。 它不会影响对$.parseJSON()现有调用,但是如果您开始使用$.parseJSON(data, true) ,则data字符串中的日期将自动转换为Javascript日期。

它支持Asp.net日期字符串: /Date(2934612301)/以及ISO字符串2010-01-01T12_34_56-789Z 。 第一种是最常用的后端Web平台,第二种是本地浏览器JSON支持(以及其他JSON客户端库,如json2.js)。

无论如何。 转到博客文章获取代码。 http://erraticdev.blogspot.com/2010/12/converting-dates-in-json-strings-using.html

链接地址: http://www.djcxy.com/p/8147.html

上一篇: Converting json results to a date

下一篇: convert timestamp to date, then convert back to timestamp