通过IE开发者工具控制台执行js代码发现,new Date(“2017-11-30 16:13:10”).getTime() 在IE下会返回NaN,而其他浏览器可以正常返回毫秒数。

    原因解析
    由于毫秒数在IE浏览器下没有正确获得,所以在之后的计算中,计算结果为undefined

    解决方法
    自定义方法
    自定义一个NewDate方法,通过调用NewDate方法获得毫秒数

    function NewDate(str){
    if(!str){

    return 0;

    }

    arr=str.split(“ “);

    d=arr[0].split(“-“);

    t=arr[1].split(“:”);

    var date = new Date();

    date.setUTCFullYear(d[0], d[1] - 1, d[2]);

    date.setUTCHours(t[0], t[1], t[2], 0);

    return date;

    }

    通过Date.parse()方法
    parse() 方法可解析一个日期时间字符串,并返回 1970/1/1 午夜距离该日期时间的毫秒数。

    parse()方法参数的日期格式为yyyy/MM/dd,所以需要将现有的日期格式通过replace()方法将日期字符串替换成yyyy/MM/dd格式。

    var date=”2017-11-30 16:13:10”;
    Date.parse(date.replace(/-/g,”/“));
    ————————————————
    版权声明:本文为CSDN博主「KeyonY」的原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接及本声明。
    原文链接:https://blog.csdn.net/u010467784/article/details/78743693