IE浏览器new Date()带参返回NaN解决方法
2018-03-15 17:14
323 查看
寻找问题
通过IE开发者工具控制台执行js代码发现,new Date("2014-01-01 12:11:12").getTime() 在IE下会返回NaN,而其他浏览器可以正常返回毫秒数。由于毫秒数在IE浏览器下没有正确获得,所以在之后的计算中,计算结果为undefined解决问题
自定义方法
自定义一个NewDate方法,通过调用NewDate方法获得毫秒数[js] 预览复制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格式。[js] 预览复制var date="2014-01-01 12:11:12";Date.parse(date.replace(/-/g,"/"));
以上两种方法支持IE和谷歌浏览器转载于:http://blog.csdn.net/wqiancangq/article/details/52484806
相关文章推荐
- IE浏览器new Date()带参返回NaN解决方法
- IE浏览器new Date()带参返回NaN解决方法
- IE浏览器(js)new Date()带参返回NaN解决方法
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法
- IE 下js里面new Date("2011-11-11") 出现nan的问题以及解决方法
- IE 下js里面new Date("2017-07-11 08:00:00") 出现NAN的问题以及解决方法
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法
- IE 下js里面new Date("2017-07-11 08:00:00") 出现NAN的问题以及解决方法
- javascript中IE浏览器不支持NEW DATE()带参数的解决方法 (转)
- IE浏览器中的ajax缓存问题与new Date()兼容性问题的解决方法
- Windows下 libvlc_new()函数返回为空解决方法
- IE浏览器下面 使用 JS的getDate()方法获取星期几出现Nan问题的解决办法
- JS中Date.parse方法返回NaN解决方案
- ie8 不支持new Date(2012-11-10)问题的解决方法
- JS中使用new Date(str)创建时间对象不兼容firefox和ie的解决方法(两种)