【问题标题】:Why is Date().dateUTC's first index 1 and Date().monthUTC's first index 0?为什么 Date().dateUTC 的第一个索引是 1,而 Date().monthUTC 的第一个索引是 0?
【发布时间】:2015-10-13 02:51:15
【问题描述】:

在 Actionscript 3 中,dateUTC 和 monthUTC 具有不同的索引范围。

使用 2015 年 10 月 12 日的日期,Date 中的 UTC 日期变量

var day:int = new Date().dateUTC
//trace = 12
var month:int = new Date().monthUTC
//trace = 9

dateUTC 的范围是 1-31。

monthUTC的范围是0-11

为什么 dateUTC 从 1 开始,而 monthUTC 从 0 开始?

【问题讨论】:

标签: actionscript-3 date


【解决方案1】:

这背后也有一个逻辑,天是真正的数字,而月不是。日历指的是带有数字的日期,而月份则指的是字符串。例如,您从未听说过第 4 个月,但您确实听到了第 6 天。由于 AS3 Date 不提供月份名称,它只提供从 0 到 11 的索引,因为天是数字 Date 正确地提供了从 1 到 n 的索引。这里又有另一个逻辑,语言。 Date 中未提供名称(如月份名称),因为支持所有语言会很痛苦。相反,您可以使用月份索引以任何语言(编码员提供的语言)显示月份,另一方面,由于它们是数字,所以不需要它。

您会在大多数语言中看到类似的模式,因为提供月份名称很麻烦,因此您可能会得到一个从 0 到 11 的索引。

【讨论】:

    【解决方案2】:

    为什么是“在 ActionScript 3 中”?因为它是ECMAScript standard for Date objects 的一部分。为什么在 ECMAScript 中?可能只是因为这就是Brendan Eich thought made sense when he came up with Javascript

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2015-10-27
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2017-04-09
      • 2020-01-15
      • 1970-01-01
      相关资源
      最近更新 更多