3

我正在解析来自推特的推文,我想显示推特“40 分钟前发布”、“1 小时前发布”之类的日期,但我有以下问题:

当我收到用户推文时,推特给我这种格式(链接 json):

http://twitter.com/status/user_timeline/BarackObama.json?count=5&callback=308
"created_at": "Tue Jul 03 01:54:48 +0000 2012",

当我搜索一个主题标签时:

http://search.twitter.com/search.json?callback=?&rpp=5&q=%23wasabi
"created_at": "Thu, 05 Jul 2012 14:31:57 +0000",

谁能帮我解析这些日期?

4

4 回答 4

5

这应该工作:

new Date(data.created_at);

(你也可以使用timeago - http://jsfiddle.net/ZhF6y/

于 2012-07-05T14:51:49.020 回答
3

John Resig 也有一个不错的小日期解析脚本。 http://ejohn.org/blog/javascript-pretty-date/

这是一个包含您需要的代码的 JSFiddle。

更新了示例推文抓取 - 你知道你想要我的答案;)

http://jsfiddle.net/ETACy/4/

于 2012-07-05T15:05:48.970 回答
0

如果您可以转换为 Unix 时间戳,请尝试Livestamp.js。它不显眼且自动更新。

于 2012-07-22T18:04:40.613 回答
0

我不是专家,但您不需要外部库,只需将 UTC 放在 + 号前面。

var date = new Date(Date.parse(tweet.created_at.replace(/( \+)/, ' UTC$1')));

灵感来自https://gist.github.com/ghostrocket/799429

于 2016-02-12T16:00:12.390 回答