Date.prototype.setYear()
已弃用: 此功能不再推荐。虽然一些浏览器可能仍然支持它,但它可能已被从相关的 Web 标准中删除,可能正在被删除,或者可能只为了兼容性目的而保留。避免使用它,如果可能,请更新现有代码;请参阅本页底部的 兼容性表 来指导您的决策。请注意,此功能可能随时停止工作。
setYear()
是 Date
实例的方法,它根据本地时间设置指定日期的年份。
然而,传统的 setYear()
方法设置年份值的方式与首选的 setFullYear()
方法设置年份值的方式不同——在某些情况下,也与 new Date()
和 Date.parse()
设置年份值的方式不同。具体来说,对于两位数的数字,例如 22
和 61
setYear()
将任何两位数的数字解释为相对于1900
的偏移量;因此date.setYear(22)
会导致年份值被设置为1922
,而date.setYear(61)
会导致年份值被设置为1961
。(相比之下,虽然new Date(61, 1)
也导致年份值被设置为1961
,但new Date("2/1/22")
会导致年份值被设置为2022
;而Date.parse()
也是类似的)。setFullYear()
不进行任何特殊解释,而是直接使用字面两位数的值来设置年份;因此date.setFullYear(61)
会导致年份值被设置为0061
,而date.setFullYear(22)
会导致年份值被设置为0022
。
由于这些行为上的差异,您应该不再使用传统的 setYear()
方法,而应该使用首选的 setFullYear()
方法。
语法
js
setYear(yearValue)
参数
yearValue
-
一个整数。
返回值
描述
如果 yearValue
是介于 0 到 99(包含)之间的数字,则 dateObj
的年份被设置为 1900 + yearValue
。否则,dateObj
的年份被设置为 yearValue
。
示例
使用 setYear()
前两行将年份设置为 1996。第三行将年份设置为 2000。
js
const theBigDay = new Date();
theBigDay.setYear(96);
theBigDay.setYear(1996);
theBigDay.setYear(2000);
规范
规范 |
---|
ECMAScript 语言规范 # sec-date.prototype.setyear |
浏览器兼容性
BCD 表格仅在浏览器中加载