我無法解析我網站的日期。它曾在IE和Chrome上正常工作(我還沒有試過Firefox)。但最近我一直無法解析鉻的日期。Chrome無法解析日期,但IE瀏覽器可以
日期字符串這是我從數據庫中獲取看起來像這樣「二○一六年十月一十七日12:00 AM」
這裏是我使用調試我的問題的代碼
console.log("String = "+item.DueDate);
console.log("new Date = " + new Date(item.DueDate));
console.log("Date Parse = " + Date.parse(item.DueDate));
console.log("Moment Parse = " + moment(item.DueDate));
這裏什麼是IE返回:
字符串= 2016年10月17日12:00 AM
新日期=星期一2016年10月17日00:00:00 GMT-0400(東部夏令時間)
日期解析= 1476676800000
瞬間解析= 1476676800000
而且這裏是由Chrome瀏覽器返回:
字符串= 2016年10月17日12:00 AM
新日期=無效的日期
Date Parse = NaN
Moment Parse = NaN
我在查找到日期之間的差值我的函數的一個使用Date.parse():
function daydiff(first, second) {
return Math.round((second - first)/(1000 * 60 * 60 * 24));
}
var dif = daydiff(Date.parse(item.DueDate), Date.parse(item.DateShipped));
我應該怎麼做我的日期字符串,以便它與Chrome和Internet Explorer上工作?
固定
所以我改變我的網絡API調用返回一個DateTime,而不是字符串固定它。
是日期被存儲爲一個字符串或整數? –
它作爲一個字符串存儲在數據庫中。 – Mark
解析值時,常見的瀏覽器問題很常見。你最好的選擇是使用像時刻的圖書館。js進行解析,它將大部分(如果不是全部的話)瀏覽器變量考慮在內。而且,這並不是您希望您的日期時間看起來像來自服務器的樣子。您可能想要改進它們的存儲方式。 – QBM5