JS IOS/iPhone的Safari浏览器不兼容Javascript中的Date()问题的解决方法

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 而谷歌火狐等浏览器对这样的格式作了扩展,调试

相关文章
相关标签/搜索