31

我正在使用 JavaScript 的Date对象,我第一次需要提取日期的年份部分。我看到的是一种奇怪的行为。它返回113而不是2013,我无法弄清楚这两个数字是如何相关的,除了最后两个数字可能相同。

var date = new Date();
console.log(date.getYear()); // prints 113
console.log(date.getFullYear()); // prints 2013

这些功能有何不同?为什么有一个功能getFullYear?对我来说,获得一年的一部分是没有意义的。

4

3 回答 3

55

对我来说,获得一年的一部分是没有意义的。

在过去,当内存昂贵且 2000 年还遥遥无期时,人们将 1975 年表示为 75 确实是有道理的。回想起来,这是一个短视的决定。

date.getFullYear() == date.getYear() + 1900
于 2013-04-30T09:51:44.523 回答
7

getYear()返回年份减去1900。这已经被弃用了一段时间,最好使用getFullYear().

于 2013-04-30T09:55:06.920 回答
3

它是 Y2K 的事情,基本上getYear方法返回年份减去 1900。

所以,我鼓励getFullYear转而使用它。

于 2013-04-30T09:53:02.423 回答