今天项目开发过程中,服务器输出 Y-m-d H:i:s 日期格式数据,前端JS执行new Date,IE和safari输出“Invalid Date”,测试如下:
var d = new Date('2019-08-09 12:10:10'); console.log('Y-m-d H:i:s ' + d) //FireFox Y-m-d H:i:s Fri Aug 09 2019 12:10:10 GMT+0800 (中国标准时间) //Chrome Y-m-d H:i:s Fri Aug 09 2019 12:10:10 GMT+0800 (中国标准时间) //Safari Y-m-d H:i:s Invalid Date //IE Y-m-d H:i:s Invalid Date //IE 8- Y-m-d H:i:s NaN var d2 = new Date("2019/08/09 12:10:10"); console.log('Y/m/d H:i:s ' + d2) //FireFox Y-m-d H:i:s Fri Aug 09 2019 12:10:10 GMT+0800 (中国标准时间) //Chrome Y-m-d H:i:s Fri Aug 09 2019 12:10:10 GMT+0800 (中国标准时间) //Safari Y/m/d H:i:s Fri Aug 09 2019 12:10:10 GMT+0800 //IE Y/m/d H:i:s Fri Aug 9 12:10:10 UTC+0800 2019
因此就解决办法很简单,将 Y-m-d H:i:s转换为 Y/m/d H:i:s 格式即可,
'2019-08-09 12:10:10'.replace(/-/g,'/');
以下是浏览器都支持的日期格式,可以把让服务器输出对应的数据,来解决此问题
new Date(2019, 08, 09); new Date(2019, 08, 09, 12, 05, 00); new Date(PHP时间戳 * 1000);
| 因为专注 所以专业 |
| 顺茂网络 - 专注网站定制开发 |
| 咨询热线:400-806-2015 |