javascript - Timeago + DateJS = NaN

标签 javascript jquery iso8601 datejs

我正在尝试使用 timeago ( source ),与 datejs ,而且它不起作用。以下是我希望可以使用的一些示例代码(假设已加载 timeagodatejs):

>>> d = new Date()
Mon Jun 21 2010 13:24:37 GMT-0400 (EST) { _orient=1, more...}
>>> d.toISOString()          // datejs.toISOString
"2010-06-21T17:24:37.501Z"   // this is a valid ISO8601 string, I believe
>>> $.timeago(d.toISOString()) // this should work
"NaN years ago"

我非常感谢任何关于为什么会失败以及如何解决或规避这个问题的意见。

谢谢。

布莱恩

最佳答案

(我是Timeago的作者)

问题在于 datejs 输出的 ISO8601 时间戳包含一个毫秒值。 Timeago 目前不支持这种详细的 ISO8601 时间戳;它仅支持 ISO8601 规范的一个子集。

这不是我第一次听说这个问题;是时候推出一个补丁来处理 millis 了。我创建了一个issue to track this 。请留意即将推出的 Timeago 版本。可能是 v0.9。

更新: 现在有一个新版本的 Timeago (v0.9),支持时间戳中的毫秒。 Download it here 。这是relevant commit .

关于javascript - Timeago + DateJS = NaN,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/3086954/

相关文章:

javascript - JavaScript 不断减去 PHP/MySQL 日期格式

jquery - 如何在完整日历中拖动和选择时仅放置占位符

javascript - 使用 Jquery 垂直选择

javascript - 从 Cloud Function 触发 Cloud Dataflow 管道 - 函数超时

javascript - 查找所有选中的复选框属性值作为 xml

jquery - 检查函数是否动态存在

javascript - 在后退按钮 IE11 上触发 document.ready

datetime - Google 表格单元格中的 ISO-8601 迄今为止的字符串

java - 无法将 ISO 8601 格式的字符串解析为 Java 8 日期,在偏移量中缺少冒号

sorting - 将 ISO 8601 日期向前或向后排序