我正在尝试将我的 <c: out 值转换为 Javascript 日期,但是当我尝试它时,我不断收到无效的日期。这是我试图变成 Javascript dateTime 的字符串。

24-02-2021 17:34:27

我通过执行以下操作获得此值:

va,javascript,date,jsp"/>
	














首页 > 解决方案 > Javascript转

我正在尝试将我的 <c: out 值转换为 Javascript 日期,但是当我尝试它时,我不断收到无效的日期。这是我试图变成 Javascript dateTime 的字符串。

24-02-2021 17:34:27

我通过执行以下操作获得此值:

va

问题描述

我正在尝试将我的 <c: out 值转换为 Javascript 日期,但是当我尝试它时,我不断收到无效的日期。这是我试图变成 Javascript dateTime 的字符串。

24-02-2021 17:34:27

我通过执行以下操作获得此值:

var d = ('<c:out value="${post.end}"/>');

然后我尝试通过以下代码将其更改为日期:

var date1 = new Date(d);
console.log(date1);

这就是我得到无效日期的地方

失效日期

现在我不确定这是否是因为我在字符串末尾有时间,所以我还尝试通过使用子字符串将日期字符串删除为末尾的时间:

24-02-2021

但这仍然有同样的错误。我还用 / 替换了所有 - 所以日期如下所示:

24/02/2021

我能做些什么来确保这个日期是一个“有效”的日期,以便我可以在我的代码中使用它。


您的日期字符串格式错误。请参阅Date 内置对象的 MDN 参考

你可以这样做:

d = d.split(' ')[0] // '24-02-2021'
const [day, month, year] = d.split('-')
const date1 = new Date(year, month, day)

标签: javascriptdatejsp

解决方案


您的日期字符串格式错误。请参阅Date 内置对象的 MDN 参考

你可以这样做:

d = d.split(' ')[0] // '24-02-2021'
const [day, month, year] = d.split('-')
const date1 = new Date(year, month, day)

推荐阅读