javascript - Masalah milisaat penukaran tarikh js
typecho
typecho 2017-06-12 09:30:26
0
2
963

Kenapa

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

Bilangan milisaat yang dikembalikan adalah berbeza?

typecho
typecho

Following the voice in heart.

membalas semua(2)
学习ing

Spesifikasi JavaScript menjamin kelakuan Date baharu("2017-06-18"). new Date("2017-6-18") tidak mematuhi format spesifikasi dan penyemak imbas boleh melakukan apa sahaja (termasuk mentafsir dalam zon waktu yang berbeza

);

Chrome melayan penghuraian format ini secara berbeza - Firefox tidak - jadi disyorkan untuk menggunakan format tarikh dalam spesifikasi dan tidak bergantung pada penyemak imbas untuk mengendalikan sebarang format "bukan standard"

Sila tulis kod mengikut spesifikasi!

阿神

new DateDate.parse 使用的是同样的解析规律,只是一个返回 Date object 另一个返回毫秒数,我们使用new DateUntuk menggambarkan masalah:

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)

Ia betul-betul 8 jam berbeza, jadi bilangan milisaat yang dikembalikan adalah berbeza.

Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan