Rumah  >  Artikel  >  hujung hadapan web  >  Bagaimana Menghuraikan Tarikh dalam JavaScript Tanpa Zon Masa?

Bagaimana Menghuraikan Tarikh dalam JavaScript Tanpa Zon Masa?

Patricia Arquette
Patricia Arquetteasal
2024-10-25 22:28:45816semak imbas

How to Parse Dates in JavaScript Without a Time Zone?

Menghuraikan Tarikh tanpa Zon Masa dalam JavaScript

Menghuraikan tarikh tanpa zon waktu tertentu dalam JavaScript boleh mencabar. Fungsi Date.parse() menganggap zon waktu setempat, yang boleh membawa kepada hasil yang salah bergantung pada lokasi semasa pengguna.

Isu:

Untuk menggambarkan isu , pertimbangkan percubaan berikut untuk menghuraikan tarikh tanpa zon waktu:

<code class="javascript">new Date(Date.parse("2005-07-08T00:00:00+0000")); // Fri Jul 08 2005 02:00:00 GMT+0200
new Date(Date.parse("2005-07-08 00:00:00 GMT+0000")); // Fri Jul 08 2005 02:00:00 GMT+0200
new Date(Date.parse("2005-07-08 00:00:00 GMT-0000")); // Fri Jul 08 2005 02:00:00 GMT+0200</code>

Tidak kira zon waktu yang ditentukan, semua percubaan mengembalikan hasil yang sama.

Resolusi:

Untuk menghuraikan tarikh tanpa zon waktu, anda boleh menggunakan langkah berikut:

  1. Buat objek Tarikh baharu daripada rentetan input.
  2. Dapatkan masa pengguna zon offset.
  3. Tolak zon masa offset daripada tarikh.
<code class="javascript">var date = new Date('2016-08-25T00:00:00')
var userTimezoneOffset = date.getTimezoneOffset() * 60000;
var parsedDate = new Date(date.getTime() + userTimezoneOffset);</code>

Fungsi getTimezoneOffset() mengembalikan nilai positif atau negatif, yang perlu ditolak untuk memastikan tarikh dilaraskan dengan tepat.

Atas ialah kandungan terperinci Bagaimana Menghuraikan Tarikh dalam JavaScript Tanpa Zon Masa?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!

Kenyataan:
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