我的一个项目在chrome上没有显示有关safari的一些信息。经过几个小时的搜索,我发现问题与Safari如何实现new Date()
& Date.parse
。
我有一些想法如何解决这个问题(感谢Invalid date in safari& Safari JS cannot parse YYYY-MM-DD date format?),但我想知道是否没有办法重载Date对象来修复此行为,而不破坏兼容性。
我是Js的初学者,所以我不知道是否有办法让浏览器使用内置函数(如果它们可以工作),或者如果没有我提供的话。对于它的价值,这些项目是一个带有JQuery& amp;的rails 3.1应用程序。 Backbone.js的
谢谢你的时间!
--- 编辑
对于它的价值,我使用Moment.js来解决这个问题。
答案 0 :(得分:1)
如果您愿意(Date
)或window.Date = ...
(Date.parse
)可以完全替换Date.parse = ...
功能,但我不会不推荐它。相反,使用您自己的函数来理解您提供的格式,并让该函数返回Date
实例。如果您要在尚未支持ECMAScript 5 date format的实现上运行代码(并且仍有 lot 的用户使用不支持的浏览器),那么您将会必须自己解析日期。