【发布时间】:2016-04-13 19:49:52
【问题描述】:
此脚本在 Chrome 中完美运行,但在 Safari 中未定义。你知道怎么解决吗?
var dateString = "2013-07-31 12:00:00";
var daysOfWeek = new Array('Sunday', 'Monday', 'Tuesday', 'Wednesday', 'Thursday', 'Friday', 'Saturday');
var whichDay = daysOfWeek[new Date(dateString).getDay()];
alert(whichDay);
JSfiddle:http://jsfiddle.net/utn3yyzc/
【问题讨论】:
-
也许这对你有帮助:stackoverflow.com/questions/3085937/…。 Safari 可能无法将 dateString 转换为有效的 Date 对象,然后你会得到 undefined。
-
console.log(new Date("2013-07-31 12:00:00"));返回“无效日期” -
当 JS 程序无法按预期运行时,您应该做的第一件事是检查浏览器控制台是否有错误消息。这将有助于您理解问题。
-
如果你需要解析非标准的日期格式,你应该考虑使用 moment.js。
-
这里有一个可行的日期格式:jsfiddle.net/gLr6z8a4
标签: javascript