接之前的此博客問題處理:js處理時間時區問題
由於 toLocaleString():據本地時間格式,把 Date 對象轉換為字符串。總是會帶有上午/下午,所以我加了參數:new Date('2019-09-12 23:33:33').toLocaleString('chinese', {hour12: false}),這樣返回的字符串就是24小時制,而沒有上午下午。
但是,在IE瀏覽器下就會報標題的錯誤,期初不知道是什么原因,經過排查發現就是這個參數問題。
所以我們需要修改下:可以利用 toUTCString() 方法:根據世界時,把 Date 對象轉換為字符串。
所以函數需要改下:
// 將實際時間轉為世界標准時間
let _realTime = new Date(_time + ' GMT+0800').toUTCString() let realTime = new Date(_realTime).getTime() // 當前時間也轉為世界標准時間
let _nowTime = new Date().toUTCString() let nowTime = new Date(_nowTime).getTime() let diffValue = nowTime - realTime
即:先把服務器時間轉為世界時,然后再把當前時間轉為世界時,再計算差值,比較靠譜