将Unix时间戳转换为ISO 8601

我想使用jquery timeago插件 – http://timeago.yarp.com/

我有这样的时间戳1331209044000 ,文档说我需要ISO 8601时间戳。

说实话,我从未听说过ISO 8601。

我怎么能转换它?

干杯

假设您的时间戳以毫秒为单位(或者您可以轻松转换为毫秒),那么您可以使用Date构造函数和date.toISOString()方法 。

 var s = new Date(1331209044000).toISOString(); s; // => "2012-03-08T12:17:24.000Z" 

如果您的目标是不支持EMCAScript 5th Edition的旧浏览器,那么您可以使用此问题中列出的策略: 如何在JavaScript中输出ISO 8601格式的字符串?

由于提供的链接,我使用的解决方案

 // convert to ISO 8601 timestamp function ISODateString(d){ function pad(n){return n<10 ? '0'+n : n} return d.getUTCFullYear()+'-' + pad(d.getUTCMonth()+1)+'-' + pad(d.getUTCDate())+'T' + pad(d.getUTCHours())+':' + pad(d.getUTCMinutes())+':' + pad(d.getUTCSeconds())+'Z' } var d = new Date(parseInt(date)); console.log(ISODateString(d));