Menyahkod Misteri Bulan Tarikh JavaScript
Dalam JavaScript, enigma bulan yang tidak padan daripada pembina Tarikh menimbulkan rasa ingin tahu. Yang membingungkan, tarikh yang dibina dengan nilai bulan 9 mengembalikan Oktober dan bukannya September yang dimaksudkan.
Menyelidiki cara kerja dalaman JavaScript, kami menghadapi logik asas di sebalik percanggahan ini. Tidak seperti konvensyen biasa, objek Tarikh JavaScript mentakrifkan bulan bermula dari 0. Oleh itu, nilai 9 yang disediakan ditafsirkan sebagai bulan kesepuluh, yang sepadan dengan Oktober.
Keputusan reka bentuk halus ini disokong oleh Rangkaian Pembangun Mozilla ( MDN):
bulan
Nilai integer mewakili bulan, bermula dengan 0 untuk Januari hingga 11 untuk Disember.
Pengesahan lanjut datang daripada spesifikasi bahasa itu sendiri:
- Biar mn jadi ?(ℝ(m) modulo 12).
Formula matematik ini dengan berkesan membalut nilai bulan sekitar modulus 12, memastikan ia sentiasa berada dalam julat 0 hingga 11.
Oleh itu, nilai bulan yang disediakan dalam kod ditukar dengan betul kepada Oktober yang sepadan berdasarkan takrifan bulan JavaScript .
Atas ialah kandungan terperinci Mengapakah `New Date(2023, 9)` mengembalikan Oktober dalam JavaScript?. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!