当我在代码下面运行时
let m = "5", d = "5", y = "2015"; new Date(`${d}-${m}-${y}`);
firefox开发者版v 56返回无效日期,而Chrome v 61则返回有效日期和正确日期。
2015年5月5日星期五00:00:00 GMT + 0530(IST)
在FF DE 56浏览器中,es6模板文字不支持,或者日期格式的浏览器中有一些不同的定义?
请建议任何帮助链接。
答案 0 :(得分:1)
这不是由模板文字引起的,这是由非标准日期格式引起的。
在Firefox开发人员版56 Scratchpad窗口中:
(new Date(`${d}-${m}-${y}`)).toString()
/*
Invalid Date
*/
(new Date(`${y}-${m}-${d}`)).toString()
/*
Mon May 04 2015 17:00:00 GMT-0700 (Pacific Standard Time)
*/
此处,使用格式DD-MM-YYYY 无效。但是,使用standard format YYYY-MM-DD会产生有效日期。
Chrome似乎允许使用超出标准的其他格式。建议不要使用非标准格式,因为不保证所有主流浏览器都支持它们。