如何使用 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
,它返回完整的四位数年份,现在是首选方法。 getFullYear
was defined in ES5.1, section B.2.4。根据 the MSDN docs,全年看起来它早在 IE6 (compatibility table) 就已得到支持。
【讨论】:
以上是关于如何使用 JavaScript 正确检索当前年份值? [复制]的主要内容,如果未能解决你的问题,请参考以下文章
js下拉菜单默认值为当前年份,下拉菜单的选项为当前年份往前推5年