zoukankan      html  css  js  c++  java
  • js, Date.parse firefox 兼容

    Date.parse(dateVal);

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

    可以验证输入日期是否窜在,不存在则返回NaN;可以比较两个日期的先后,或计算两个日期相差的天数。

    我的需求是根据两个日期,获得日期间隔的每一天

    var sTime = '2014-05-06';
    var eTime = '2014-05-10';
    
    function gdate(datestr){
        var temp = datestr.split('-');
        return Date.parse(temp[1]+'-'+temp[2]+'-'+temp[0]);
    }
    
    function gd(ts){
        ts = new Date(ts);
        with(ts){
            var y = getFullYear(),
                m = getMonth()+1,
                d = getDate();
            if(m < 10) m = '0'+m;
            if(d < 10) d = '0'+d;
            return y+'-'+m+'-'+d;
        }
    }
    
    var s = gdate(sTime),
        e = gdate(eTime);
                        
    console.log(s)
    console.log(e)
    
    while(s < e){
        console.log(gd(s));
        s+=3600*24*1000
    }

    在谷歌,ie上都行,就火狐无效,最后找的个细节。parse方法要求短日期可以使用"/"或"-"作为分隔符,但是必须用月/日/年的格式来表示,可以这样"05-06-2014"或"05/06/2014",问题就来了,"05-06-2014"时,firefox的返回值总是NaN,换成另一中格式就可以正常解析了,开始还以为是代码哪里出问题了,唉,细节啊!

  • 相关阅读:
    安装pandas所需c及c++依赖
    linux中文临时生效
    标维参考命令
    linux运维
    prop属性
    centos python虚拟环境安装
    centos7&python3.6uwsgi安装
    react 入坑笔记(六)
    js 实现数据结构 -- 集合(MySet)
    js 实现数据结构 -- 链表(LinkedList)
  • 原文地址:https://www.cnblogs.com/hailspace/p/3711705.html
Copyright © 2011-2022 走看看