【发布时间】:2016-02-03 14:08:59
【问题描述】:
Mozilla 浏览器我尝试在 JavaScript 中获取时间戳,例如 php 中的 strtotime
我的代码:
//var start_date = data.result[0].start_date;
var start_date = "2011-01-26 13:51:50";
var d = Date.parse(start_date) / 1000;
console.log(d);
// 1296030110
以上代码在 chrome 中运行良好。但不适用于 Mozilla 浏览器。我得到了NaN 的价值。请帮帮我。
在谷歌搜索后,我找到了一种在日期和时间之间添加T 的解决方案。所以我添加了。我得到了输出,但两个浏览器的输出不一样。
var start_date = "2011-01-26T13:51:50";
var d = Date.parse(start_date) / 1000;
console.log(d);
//Mozilla = 1296030110
//Chrome = 1296044910
【问题讨论】:
-
还在时间后面加上一个时区指示符,那么它将始终如一地工作
-
必须再说一遍:不要用 Date 构造函数解析字符串。 OP 中的格式不是 ECMAScript 2015 识别的格式(无论如何,所有使用的浏览器都不支持),因此如何处理它完全取决于实现(包括作为无效日期)。始终手动解析字符串,要么编写自己的两行函数,要么使用库。
标签: javascript datetime