码迷,mamicode.com
首页 > 其他好文 > 详细

Date.parse()的兼容问题

时间:2017-08-16 18:21:11      阅读:137      评论:0      收藏:0      [点我收藏+]

标签:ndt   低版本   项目   efi   com   距离   时间   func   chrome   

今天做项目遇到在ie,firefox上比较时间出错,但在chrome上正常,于是查找原因,发现是由Date.parse()的兼容性导致

  compareTime: function(strStartTime, strEndTime) {
        var objStartTime = Date.parse(strStartTime);
        var objEndTime = Date.parse(strEndTime);
        if (objStartTime <= objEndTime) {
            return true;
        }
        return false;
    }

parse():Date的静态方法,返回该时间距离1970/1/1的毫秒数

低版本IE 不支持Date.parse(‘2017-08-16 17:13:30‘)  支持Date.parse(‘2017-08-16 17:13:30‘)

 

火狐  不支持Date.parse(‘foot 2017‘),此时返回NAN 可以用isNaN()来检测 

Chrome 会将Date.parse(‘foot 2017‘)解析成Date.parse(‘ 2005‘)

最终解决方式

compareTime: function(strStartTime, strEndTime) {
        strStartTime = strStartTime.replace(/-/g, "/");
        strEndTime = strEndTime.replace(/-/g, "/");
        var objStartTime = Date.parse(strStartTime);
        var objEndTime = Date.parse(strEndTime);
        if (objStartTime <= objEndTime) {
            return true;
        }
        return false;
    }

 

 

Date.parse()的兼容问题

标签:ndt   低版本   项目   efi   com   距离   时间   func   chrome   

原文地址:http://www.cnblogs.com/zml-mary/p/7374584.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!