从blockchain.info上的时间戳输出人类可读时间

时间:2014-08-17 20:43:49

标签: javascript json bitcoin blockchain

我想解析来自blockchain.info的API的JSON响应的时间戳。

以下是一个示例代码段https://blockchain.info/api/api_websocket

所以,如果我们看一下

"time": 1331300839,

我尝试做类似

的事情
var test = new Date(1331300839);
test.getFullYear();

我的结果大约是1970年。我已经尝试使用Date对象来解析最近的比特币交易..说https://blockchain.info/rawaddr/1Hy8LSovPiT3Z4qF7Hr2piJXZFHzpSBaEK我还要到1970年。

那么如何从这些时间戳中获得人类可读的输出?

感谢。

2 个答案:

答案 0 :(得分:2)

根据documentation for Date,日期以毫秒而不是秒来定义,因此您需要将时间戳乘以1000。

运行以下结果会发出包含文字“2012”的警告。

var test = new Date(1331300839*1000);
alert(test.getFullYear());

与Adrian一样,如果您想将时间戳转换为人类可读的字符串,我也会推荐Moment.js

答案 1 :(得分:2)

如果你想格式化日期和时间,可能是你能找到的最好的轻量级图书馆有moment.js

var parsed = moment.unix(1331300839)

现在要格式化此时刻实例,只需使用此列表中所需的格式:http://momentjs.com/docs/#/displaying/或使用非常简单但功能强大的时刻.toString()或moment.fromNow()

parsed.toString()
// "Fri Mar 09 2012 14:47:19 GMT+0100"

parsed.fromNow()
// "2 years ago"