這適用於Chrome,但不適用於Firefox。在Chrome 此日期格式有什麼問題
new Date("2013-06-03 17:09:06-0400")
- 正常工作給出了 '男' 在Firefox。
我將不勝感激任何幫助。
這適用於Chrome,但不適用於Firefox。在Chrome 此日期格式有什麼問題
new Date("2013-06-03 17:09:06-0400")
我將不勝感激任何幫助。
看看Mozilla開發者網絡的Date和Date.parse文檔。
具體地說,它指出:
或者,日期/時間字符串可以是在ISO 8601格式。從JavaScript 1.8.5(Firefox 4)開始,支持ISO 8601的一個子集。例如,可以傳遞和解析「2011-10-10」(剛剛日期)或「2011-10-10T14:48:00」(日期和時間)。
如果您在日期和時間之間拋出一個「T」你:
new Date("2013-06-03T17:09:06-0400")
=> Mon Jun 03 2013 14:09:06 GMT-0700 (PDT)
在這兩種瀏覽器和Mozilla,但你必須考慮在當前時區(因此PDT)的用戶系統。
太棒了。添加'T'會發揮魔力。現在可以在Firefox和Chrome中使用。非常感謝。 – MickJ
根據我的經驗,只有可靠的方法來從JavaScript中的字符串構造日期對象是自己分析字符串,然後使用構造函數的版本,每個字段採用單獨的數字參數。
基於字符串的構造函數太容易出現語言環境相關的分析錯誤。
感謝您的回覆。我很欣賞這個建議。 – MickJ
解決方案相關/類似的問題(沒有真正的答案):http://stackoverflow.com/questions/3566125/problem-with-date-formats-in-javascript-with-different-browsers – Tessmore
接受的答案在於問題對我的情況不起作用。我嘗試使用:new Date('2013-06-03 17:09:06-0400'.replace(/ \ -/g,'\ /')。replace(/ [T | Z]/g,'') )但它給了'無效的日期'。 – MickJ
好吧,對不起:) – Tessmore