ฉันสังเกตเห็นว่าใน JavaScript เมื่อสร้าง a Date
เดือนจะเป็นศูนย์และไม่ได้เป็นวัน
ตัวอย่างเช่น:
var foo = new Date(2012, 1, 1)
ผลิต 1 กุมภาพันธ์ 2012
ทำไมนี้
ฉันสังเกตเห็นว่าใน JavaScript เมื่อสร้าง a Date
เดือนจะเป็นศูนย์และไม่ได้เป็นวัน
ตัวอย่างเช่น:
var foo = new Date(2012, 1, 1)
ผลิต 1 กุมภาพันธ์ 2012
ทำไมนี้
คำตอบ:
น่าจะเป็นความคิดที่ว่าเดือนที่คิดว่าเป็นดัชนีในอาร์เรย์ของชื่อเดือนในขณะที่วันที่เป็นเพียง "นับ"
new Date().getTime()
อาจเป็นได้ว่าวันที่ของ Javascript นั้นหมายถึงการเลียนแบบวันที่ของ Java Java ได้ใช้เดือนตามศูนย์ตั้งแต่ต้น
months = ['Jan', 'Feb',..., 'Nov', 'Dec']; month = months[date.getMonth()];