javascript - js Date轉換毫秒數問題
typecho
typecho 2017-06-12 09:30:26
0
2
923

為什麼

Date.parse('2017-06-18');    //1497744000000
Date.parse('2017-6-18');    //1497715200000

回傳的毫秒數是不一樣的?

typecho
typecho

Following the voice in heart.

全部回覆(2)
学习ing

JavaScript的規格保證了new Date("2017-06-18")的行為。 new Date("2017-6-18")不符合規格格式,瀏覽器可以做任何事情(包括在不同的時區解釋);

Chrome對待這些格式的解析產生差異 - firefox不會這樣 - 所以建議使用規範中的日期格式,不要依賴瀏覽器處理任何“非標準”格式

請依照規範寫程式!

阿神

new DateDate.parse 使用的是相同的解析規律,只是一個回傳 Date object 另一個回傳毫秒數,我們用new Date來說明問題:

另一個回傳毫秒數,我們用

new Date

console.log(new Date('2017-06-18')) // Sun Jun 18 2017 08:00:00 GMT+0800 (CST)
console.log(new Date('2017-6-18')) // Sun Jun 18 2017 00:00:00 GMT+0800 (CST)
🎜剛好差8小時,所以回傳的毫秒數就不一樣咯。 🎜
熱門教學
更多>
最新下載
更多>
網站特效
網站源碼
網站素材
前端模板