Rumah > hujung hadapan web > tutorial js > Mengapakah `Tarikh baharu(\'YYYY-MM-DDTHH:MM:SS\')` Menghasilkan Keputusan Berbeza dalam Chrome dan Firefox?

Mengapakah `Tarikh baharu(\'YYYY-MM-DDTHH:MM:SS\')` Menghasilkan Keputusan Berbeza dalam Chrome dan Firefox?

Susan Sarandon
Lepaskan: 2024-10-27 01:49:30
asal
346 orang telah melayarinya

Why Does `new Date('YYYY-MM-DDTHH:MM:SS')` Produce Different Results in Chrome and Firefox?

Keserasian merentas pelayar bagi Penciptaan Objek Tarikh

Apabila menghuraikan rentetan tarikh ke objek Tarikh menggunakan JavaScript, variasi timbul antara penyemak imbas yang berbeza seperti sebagai Chrome dan Firefox. Percanggahan ini menjadi jelas apabila menggunakan pembina Date() baharu untuk menghuraikan rentetan tarikh dalam format 'YYYY-MM-DDTHH:MM:SS'.

Dalam coretan kod yang disediakan:

<code class="js">var date = new Date('2013-02-27T17:00:00');</code>
Salin selepas log masuk

Firefox mentafsir rentetan input sebagai waktu tempatan dan menambah zon waktu setempat mengimbangi (GMT 0700). Ini menghasilkan tarikh yang satu hari lebih awal daripada waktu UTC yang dimaksudkan, menghasilkan:

Wed Feb 27 2013 17:00:00 GMT+0700 (SE Asia Standard Time)
Salin selepas log masuk

Sebaliknya, Chrome menghuraikan rentetan dengan betul sebagai masa UTC dan mengembalikan hasil yang dijangkakan:

Thu Feb 28 2013 00:00:00 GMT+0700 (SE Asia Standard Time)
Salin selepas log masuk
Salin selepas log masuk

Penyelesaian

Untuk memastikan gelagat yang konsisten merentas penyemak imbas, tambahkan 'Z' pada rentetan tarikh untuk menunjukkan waktu UTC secara eksplisit. Format yang betul untuk UTC ialah 'YYYY-MM-DDTHH:MM:SSZ'.

<code class="js">var date = new Date('2013-02-27T17:00:00Z');</code>
Salin selepas log masuk

Pengubahsuaian ini akan menyelesaikan percanggahan dan menghasilkan hasil yang sama dalam Chrome dan Firefox, mencerminkan masa UTC asal :

Thu Feb 28 2013 00:00:00 GMT+0700 (SE Asia Standard Time)
Salin selepas log masuk
Salin selepas log masuk

Atas ialah kandungan terperinci Mengapakah `Tarikh baharu(\'YYYY-MM-DDTHH:MM:SS\')` Menghasilkan Keputusan Berbeza dalam Chrome dan Firefox?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

sumber:php.cn
Kenyataan Laman Web ini
Kandungan artikel ini disumbangkan secara sukarela oleh netizen, dan hak cipta adalah milik pengarang asal. Laman web ini tidak memikul tanggungjawab undang-undang yang sepadan. Jika anda menemui sebarang kandungan yang disyaki plagiarisme atau pelanggaran, sila hubungi admin@php.cn
Artikel terbaru oleh pengarang
Tutorial Popular
Lagi>
Muat turun terkini
Lagi>
kesan web
Kod sumber laman web
Bahan laman web
Templat hujung hadapan