格式化日期会在IE和Chrome中显示不同的值

时间:2016-10-10 14:04:18

标签: javascript google-chrome internet-explorer

我有以下javascript函数

function dateFormatter(value) {     

    var d= new Date(value)
    console.log('value    : ' + value);
    console.log('d        : ' + d);
    var formattedDate = d.getFullYear() + '-' + ('0' + (d.getMonth() + 1)).slice(-2) + '-' + ('0' + d.getDate()).slice(-2) + ' ' + ('0' + d.getHours()).slice(-2) + ':' + ('0' + d.getMinutes()).slice(-2);
    console.log('formated : ' + formattedDate)
    return formattedDate
}

该值是MS-SQL的日期时间。

在IE / Edge中,我获得了正确的格式化值...这是控制台日志的示例输出...

value    : Oct  3 2016  8:00AM
d        : Mon Oct 03 2016 08:00:00 GMT+0100 (GMT Summer Time)
formated : 2016-10-03 08:00

value    : Oct 31 2016  8:00AM
d        : Mon Oct 31 2016 08:00:00 GMT+0000 (GMT Standard Time)
formated : 2016-10-31 08:00

在Chrome中,我收到日期无效的错误...

value    : Oct  3 2016  8:00AM
d        : Invalid Date
formated : NaN-aN-aN aN:aN

value    : Oct 31 2016  8:00AM
d        : Invalid Date
formated : NaN-aN-aN aN:aN

任何想法,为什么这是......因为我不知所措。格式化的值输出到html表,因此在IE和Edge I中获得所需的值,而在Chrome中,每个值都为NaN-aN-aN aN:aN

任何帮助表示赞赏

0 个答案:

没有答案