2016-01-21 84 views
2

根据此answer,Firefox和Chrome在创建日期对象时接受格式"YYYY MM DD"Edge,Chrome和Firefox中的日期定义

然而,边缘不允许new Date("YYYY MM DD")并希望被初始化为:new Date("YYYY-MM-DD")

所以,我应该首先检查创建日期对象之前正在使用的浏览器或者是有一个共同的模式,通过该日期对象可以创建?

回答

0

我不确定我是否理解你的问题,因为我尝试过的Firefox可以使用新的Date(“YYYY-MM-DD”),所以你可以使用它并通过使用Edge避免出现问题总而言之,无论如何,如果你得到一个无效的日期,这是我的解决方案,例如:

var date;

 date = new Date("10 01 01"); //invalid date 
    if(isNaN(date.getDay())){ 
     date = new Date("2010-01-01") 
    } 

希望这有助于你

+0

“Firefox”不允许使用日期(“YYYY-MM-DD”)。所以,我需要一个共同的模式。我明白你的回避,但宁愿有一个更干净的解决方案,因为这个函数将被调用很多次。 – Asqan

+0

我觉得很奇怪,因为我试图在Firefox上这样做,发现这一点: JavaScript ISO日期 ISO 8601是表示日期和时间的国际标准。 的ISO 8601语法(YYYY-MM-DD),也是首选的JavaScript日期格式 在http://www.w3schools.com/js/js_date_formats.asp 抱歉,我不能是任何帮助 – Pizzy

相关问题