关于IE不支持new Date('yyyy-mm-dd')

在做一个时间控件时,需要做时间的限制,于是用到了new Date('yyyy-mm-dd').getTime()来比较时间,后来测试发现,在ie上竟然功能不能实现,经过排查发现,在ie下,new Date('yyyy-mm-dd') 返回的值是NaN。

 

这时查找了一下,原来ie下支持new Date(yyyy,mmm,dd)形式。这时就又要麻烦改写格式了:

 

var time = '2015-09-1 16:11';
var newFormatTime = NewDate(time);

var date = new Date(newFormatTime[0],newFormatTime[1],newFormatTime[2],newFormatTime[3],newFormatTime[4]);

console.log(date.getTime()); //1443687060000

function NewDate(str) {
    date = str.split(' ')[0].split('-');
    time = str.split(' ')[1].split(':');
    var number = [];
    for (var i = 0; i < 3; i++) {
        number[i] = Number(date[i]);
    }

    for (var j = 3; j < 5; j++) {
        number[j] = Number(time[j - 3]);
    }
    return number;
}

 

特别无语的是ie下,new Date()传入的是一串number,我试了一下传入一串字符不管用。

比如,new Date('2015,9,1,16,11'),输出则为NaN。

 

不知道还有没有更好的处理方式,求大神指教。

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值