JAVASCRIPT的日期构造函数:在JavaScript中揭示基于零的月份的奥秘
The Historical Root
The true origin of this inconsistency lies in the Java programming language. JavaScript的日期构造函数是以Java的Java.util.date建模的,该构建器也以零基于零的月份为特色。尽管有一个基于一个月的几个月的惯例。
基于零的logic在一年内确定一个特定月份。当初始化一个月为0的日期对象时,它代表一月。同样,一个月的11个月表示12月。此数值表示简化了日期和时间系统的内部计算和数据存储。违反直觉但实用,而基于零的月份似乎是反直觉的,它们确实提供了实际的好处。数组和其他数据结构通常使用基于零的索引。与这种方法保持一致性可以简化日期处理和操纵,确保几个月与数组索引和其他系统组件保持一致。
一个月的一个日期
,与月份,每月的日期,JavaScript的日期构造者的构造师是一个基于构造师。这种设计选择更加直观,并遵循日历日的常规表示。一个基于一个基于的编号简化了一个月内指定确切的一天,消除了调整零偏移月份的需求。在Javascript的日期构建体中基于零的月份参数是从Java继承的历史性artifact。尽管它看起来可能令人困惑,但它在内部计算中具有实际目的,并且与数据结构中的共同实践保持一致。但是,本月的一个基于一天的论点提供了一种更直观的方式来表示特定日期。了解此设计Quirk对于在JavaScript应用中的生效日期和时间处理至关重要。
免责声明: 提供的所有资源部分来自互联网,如果有侵犯您的版权或其他权益,请说明详细缘由并提供版权或权益证明然后发到邮箱:[email protected] 我们会第一时间内为您处理。
Copyright© 2022 湘ICP备2022001581号-3