1

我为我的 Alfresco/Activiti 工作流程编写的部分 webscripts 支持采用 ISO 格式的日期/时间的请求。

2012-10-23T16:52:08

我在想 Javascript Date 对象应该能够处理这个问题,尤其是在 Alfresco 安装程序使用的 Tomcat 版本中。(Tomcat6 在 Window 2003 Server 上运行)。

够简单...

var dDate = new Date( "2012-10-23T16:52:08" );

这会导致日期无效。我意识到 ISO 日期格式处理是 ECMA 脚本规范的最新(2009-2010?)补充。

Tomcat6/Alfresco javascript 解析引擎可以处理 ISO 日期字符串吗?如果没有,有什么我可以更新的吗?

据此: https ://developer.mozilla.org/en-US/docs/JavaScript/Reference/Global_Objects/Date/parse 我需要使用 Javascript 版本 1.8.5 如何更新 Alfresco/Tomcat 的 javascript 解析逻辑到那个版本,如果可能的话?

4

2 回答 2

1

Alfresco JavaScript API wiki 页面中描述了 Alfresco 特定的 JavaScript 函数

您想要的位是对象上的实用功能utils之一:

来自 ISO8601 的日期(字符串)

    Parse a Date from ISO8601 formatted string 

因此,您需要执行以下操作:

 var dDate = utils.fromISO8601( "2012-10-23T16:52:08" );
于 2012-11-02T19:47:32.933 回答
0

尝试将时区添加到日期,例如 2012-10-23T16:52:08+00:00 或 2012-10-23T16:52:08Z。MDN 上的文档指出它是 ISO 8601 的一个子集,可以从 JavaScript 1.8.5 使用,因此如果您指定完整格式,那么大概可以在旧版本中使用。

作为旁注,用于在 Alfresco 中解释服务器端 JS 的引擎是 Mozilla 的 Rhino。

于 2012-11-03T16:38:35.150 回答