1 var date = new Date('2016-11-11 11:11:11'); 2 document.write(date);
最近在寫一個時間判斷腳本,需要將固定好的字符串時間轉換為時間戳進行比較,在做的時候個人習慣使用chrome作為調試工具,
代碼基本完成之后,一切正常;
使用其他瀏覽器訪問,好嘛,IE跟safari都不兼容,返回錯誤"Invalid Date"。
解決方案:
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 而谷歌火狐等瀏覽器對這樣的格式做了擴展,