1 var date = new Date('2016-11-11 11:11:11'); 2 document.write(date);
最近在写一个时间判断脚本,须要将固定好的字符串时间转换为时间戳进行比较,在作的时候我的习惯使用chrome做为调试工具,javascript
代码基本完成以后,一切正常;java
使用其余浏览器访问,好嘛,IE跟safari都不兼容,返回错误"Invalid Date"。chrome
解决方案:浏览器
1 var arr = "2016/11/11 11:11:11".split(/[- : \/]/), 2 date = new Date(arr[0], arr[1]-1, arr[2], arr[3], arr[4], arr[5]); 3 document.write(date);
var time = '2018-01-11 10:23:24' var date = new Date(time.replace(/-/g, '/')) var date1 = new Date(time) console.log(time.replace(/-/g, '/')) document.write(Math.round(date.getTime() / 1000).toString()) document.write('<br>') document.write(Math.round(date1.getTime() / 1000).toString()) document.write('<br>') var arr = time.split(/[- : \/]/), date2 = new Date(arr[0], arr[1]-1, arr[2], arr[3], arr[4], arr[5]); document.write(Math.round(date2.getTime() / 1000).toString());
终于能够兼容全部浏览器咯,结论:工具
iPhone中的safari所支持的格式为 YYYY,MM, DD,HH,mm,ss或者YYYY/MM/DD HH:mm:ss 而谷歌火狐等浏览器对这样的格式作了扩展,调试