Javascript String to Date适用于Chrome,而不是FF或Safari

Javascript String to Date works in Chrome, not FF or Safari

本文关键字:FF Safari to String Date 适用于 Chrome Javascript      更新时间:2023-09-26

我有一个元素,以这种格式显示日期字符串: <div> ListDate: 2014-11-22 00:00:00.0 </div>我有一个捕获该文本的变量,现在我正在去除除日期字符串之外的所有内容并尝试将其转换为日期,以便我可以对其进行一些数学运算。我的代码在Chrome中运行良好,但在FF和Safari中总是返回NaN。这是javascript:

var listDate = " ListDate: 2014-11-22 00:00:00.0 ";
listDate = listDate.replace('ListDate:', '');
listDate = $.trim(listDate);
listDate = Date.parse(listDate);

我正在Firebug中观看它,它一直按预期执行,直到Date.parse()。我尝试了此线程上显示的解决方案,但仍然没有运气。有什么想法吗?我无法控制html,它来自Web服务。

> 全ISO8601格式 (IIRC) 期望在该字符串的日期和时间部分之间有一个大写字母"T",例如"2014-11-22 T 00:00:00.0"https://en.wikipedia.org/wiki/ISO_8601(因此我建议始终添加 T 分隔符。

例如,以下代码在某些浏览器中将解析为 NaN

var myAlmostISODate = "2014-11-22 00:00:00.0";
console.log("Date: " + Date.parse(myAlmostISODate));
//IE11: NaN
//Firefox: 1416632400000
//Chrome: 1416632400000