如何使用 JavaScript 正确检索当前年份值? [复制]

Posted

技术标签:

【中文标题】如何使用 JavaScript 正确检索当前年份值? [复制]【英文标题】:How can I correctly retrieve the current year value using JavaScript? [duplicate] 【发布时间】:2015-07-16 18:11:47 【问题描述】:

我是 javascript 新手,遇到以下问题。

我必须检索实际年份(即2015)。

所以我是这样做的:

var oggi = new Date();
var year = oggi.getYear();

问题是year变量的值是115,我认为这取决于它是从1900年开始计算的,实际上是1900年+ 115 = 2015

我知道我可以将 1900 值添加到检索到 year 变量中的值中,这样我将获得所需的实际年份值。但在我看来,这是一个肮脏的解决方案。我可以用更好的解决方案做同样的事情吗?

Tnx

【问题讨论】:

getYear() 正是由于您确定的行为而被弃用。请改用getFullYear() 【参考方案1】:

使用getFullYear() 返回四位数年份:

var oggi = new Date();
var year = oggi.getFullYear();

事实上,getYear() method is deprecated 和如上所述,对于小于 1900 的任何年份都返回 0。

【讨论】:

【参考方案2】:

根据the MDN docs,getYear 实际上会返回当前年份 - 1900。这是记录在案的行为,显示在 the spec at B.2.4 中,因此您所做的事情是完全安全和合理的。 然而...

getYear 方法已被弃用,取而代之的是 getFullYear,它返回完整的四位数年份,现在是首选方法。 getFullYearwas defined in ES5.1, section B.2.4。根据 the MSDN docs,全年看起来它早在 IE6 (compatibility table) 就已得到支持。

【讨论】:

以上是关于如何使用 JavaScript 正确检索当前年份值? [复制]的主要内容,如果未能解决你的问题,请参考以下文章

如何在 Oracle 上使用 SQL 获取当前年份?

js下拉菜单默认值为当前年份,下拉菜单的选项为当前年份往前推5年

JavaScript getFullYear() 方法

Movilizer - 检索当前平台

Excel 日期值检索为 DD/MM/YY,如何将其格式化为 YYYY-MM-DD?

使用 PHP,如何检索与创建的月份和年份匹配的项目