【问题标题】:How to properly create a JavaScript Array of Dates in Spring?如何在 Spring 中正确创建 JavaScript 日期数组?
【发布时间】:2011-10-06 12:59:23
【问题描述】:

我有一个 Spring Web MVC 应用程序,我需要在其中获取一个 JavaScript 数组,其中填充了 java.util.Dates,这些数组存储在一个 ArrayList 中,可以通过${cust.dates} 访问 webapp。 如何在 webapp 中正确初始化数组?

谢谢。

【问题讨论】:

  • JavaScript 数组填充有 java.util.Dates?
  • 嗯,自然而然的 java.util.Dates 应该被转换为 JS Dates。
  • 如何使用将 java.util.Date 转换为 Javascript 日期?你的意思是某种 Javascript 知道如何阅读的文本表示?
  • 我在问题之前读了标题并想,“只需测试月份是三月,四月还是五月......还有什么更简单的?”
  • @nicholas.hauschild 没错,一个可用的文本表示。 var array = new Array(${cust.dates}); 只是给了我一个不可用格式的日期字符数组。

标签: javascript arrays spring date spring-mvc


【解决方案1】:

Spring 在服务器端执行,JavaScript 在客户端执行。对于 Spring 的观点,JavaScript 只是必须生成的文本。并且此文本必须代表有效的 JavaScript 源代码。

创建日期数组的 JavaScript 源代码可以这样生成:

var dateArray = [];
<c:forEach var="javaDate" items="${cust.dates}">
    dateArray.push(new Date(${javaDate.time}));
</c:forEach>

这将生成以下 JavaScript 代码:

var dateArray = [];
dateArray.push(new Date(65987985);
dateArray.push(new Date(98654654);
// ...

数字参数是自纪元以来的毫秒数,在 Java 和 JavaScript 中是相同的。

【讨论】:

  • 正是我想要的。谢谢!
猜你喜欢
  • 2015-02-11
  • 1970-01-01
  • 1970-01-01
  • 2022-01-08
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2022-06-10
  • 1970-01-01
相关资源
最近更新 更多