JS中的getYear()方法不是返回的是两位数吗?


var mydate = new Date();
console.log(mydate.getYear());//输出为115;
这是为什么,不是应该是最后两位吗

javascript对象

米饭·点点 9 years, 7 months ago

对于已经被替代掉的方法就不要去追究它返回的是否正确了。 JavaScript Date对象

瞳シンタケ answered 9 years, 7 months ago

原因:在1900-1999之间返回最后两位
大于1999返回当今日期1900的年份差比如2000返回100
小于1900返回也是1900的差比如1800返回-100
详情参考MDN
注意:这个方法不被推荐用getFullYear()方法替换
https://developer.mozilla.org/en-US/docs/Web/JavaScript/Reference/Global_Objects/Date/getYear

远野贵树_ answered 9 years, 7 months ago

注释:由 getYear() 返回的值不总是 4 位的数字!对于介于 1900 与 1999 之间的年份,getYear() 方法仅返回两位数字。对于 1900 之前或 1999 之后的年份,则返回 4 位数字!
注释:该方法总是结合一个 Date 对象来使用。
重要事项:从 ECMAScript v3 开始,JavaScript 的实现就不再使用该方法,而使用 getFullYear() 方法取而代之!

红豆黑米粥 answered 9 years, 7 months ago

Your Answer