狐的传说
原因不太清楚,从结果看new Date()的时候把传入的时间当成是世界标准时间了,可以明确的给时间后面加上时区:new Date('2017-10-19T14:51:52+0800');补充在safari浏览器,new Date() 中传入的参数的参数中不能识别‘-’,‘T’,所以需要转化一下,兼容性函数如下:function fixDate(strTime) { if (!strTime) { return ''; } var tempDate = new Date(strTime+'+0800'); if(tempDate=='Invalid Date'){ strTime = strTime.replace(/T/g,' '); strTime = strTime.replace(/-/g,'/'); tempDate=new Date(strTime+'+0800'); } tempDate.toLocaleDateString(); return tempDate; }