ฉันเขียนโค้ดฟังก์ชั่นเพื่อลบวันจากค่าวันที่ใน javascript และฉันประหลาดใจที่ getMonth ของ javascript เริ่มต้นจาก 0 ถึง 11 มกราคมสำหรับธันวาคม ทำไม getMonth ของ javascript เริ่มต้นด้วย 0
ฉันเขียนโค้ดฟังก์ชั่นเพื่อลบวันจากค่าวันที่ใน javascript และฉันประหลาดใจที่ getMonth ของ javascript เริ่มต้นจาก 0 ถึง 11 มกราคมสำหรับธันวาคม ทำไม getMonth ของ javascript เริ่มต้นด้วย 0
คำตอบ:
ที่คาดเดาเพื่อช่วยในการจัดทำดัชนีในอาร์เรย์
ลองนึกภาพว่าคุณมีสตริงแสดงเดือนเก็บอยู่ในอาร์เรย์และต้องการรับสตริงที่ถูกต้องโดยใช้ getMonth ()
แน่นอนว่าทำไมอาร์เรย์เริ่มต้นที่ศูนย์เป็นอีกคำถามหนึ่ง
เป็นไปได้มากเนื่องจากการเรียกใช้ไลบรารี C เพื่อรับค่าที่จะส่งกลับจะส่งกลับหลายเดือนด้วยวิธีนี้
(และเหตุผลสำหรับการออกแบบนั้นน่าจะเป็นเพราะการเรียกไลบรารี่ได้รับการออกแบบพร้อมกับโปรแกรมที่จะพิมพ์วันที่ซึ่งดัชนีแบบ zero-based สามารถใช้โดยตรงเพื่อพิมพ์ชื่อเดือน)
หากองค์ประกอบหนึ่งในโครงสร้างเริ่มต้นด้วย 0 องค์ประกอบทั้งหมดควรเริ่มต้นด้วยองค์ประกอบนั้นหรือไม่มีองค์ประกอบใด ๆ ฉันค้นพบพฤติกรรมดังกล่าวบนเว็บไซต์ของฉันช้าไปหน่อย
struct tm
ทำแบบนั้น