如何将来自数据库的日期字符串转换为新的 Date() 对象?
如果我执行以下操作:
var x = new Date('2013-11-05 11:01:46:0');
alert(x);
它在 Chrome 中工作,但在 Safari 中它给了我字符串“无效日期”。 这是小提琴。
如何将来自数据库的日期字符串转换为新的 Date() 对象?
如果我执行以下操作:
var x = new Date('2013-11-05 11:01:46:0');
alert(x);
它在 Chrome 中工作,但在 Safari 中它给了我字符串“无效日期”。 这是小提琴。
接受的字符串格式new Date(string)
取决于实现。但是,如果浏览器正确实现了 ES5 规范,则应该接受合法 ISO 8601 字符串的严格子集。基本上,您需要使用 UTC 而不是本地时间,在日期和时间之间放置一个“T”而不是空格,在整数和小数秒之间使用小数点而不是冒号,并在末尾附加一个“Z”整个事情:
2013-11-05T11:01:46.000Z
也许您可以让您的数据库以该格式输出日期;否则,您应该查看第三方库,例如moment.js。