【发布时间】:2015-02-06 03:42:10
【问题描述】:
我们有一个要求,我们希望在服务器端代码和移动客户端 JavaScript 代码中使用一致的日期时间格式。我们决定使用 moment.js,在客户端进行日期格式化。然而,两者的输出并不同步。
Time Format String: "**YYYY-MM-DD'T'HH:mm:ss.SSSZZ**"
Java 代码和输出
java.util.Date d2 = new java.util.Date();
SimpeDateFormat sdf = new SimpleDateFormat("YYYY-MM-DD'T'HH:mm:ss.SSSZZ");
sdf.setTimeZone(TimeZone.getTimeZone("GMT"));
String formattedDate = sdf.format(d2);
System.out.println(formattedDate);
Output:2015-02-06T03:28:24.333+0000
Moment JS 输出
var d2 = new Date();
var format = "YYYY-MM-DD'T'HH:mm:ss.SSSZZ";
alert(moment(d2).format(format));
Output: 2015-02-06'T'03:28:24.333+0000
在 moment.js 中,T 用引号括起来。 同样,如果格式为“YYYY-MM-DD'TXYZ'HH:mm:ss.SSSZZ”。 Java 输出:2015-02-06TXYZ03:28:24.333+0000, 力矩输出:2015-02-06'T1423193658Y+05:30'09:04:18.351+0530
谁能给我建议一个解决方案,或者更好的替代方案。
【问题讨论】:
-
为什么你会自动认为它会匹配 Java?时刻是它自己的东西。人们将它与各种不同的后端一起使用。
标签: javascript datetime momentjs