使用var years = new Date().setFullYear(new Date().getFullYear())
时,我得到一个 13 位数字作为回报。(1521150199880
)
整个代码块如下:
function changeYear(value) {
var years = new Date().setFullYear(new Date().getFullYear());
alert(years)
if (value < 0) {
year1 = year1 - 1;
document.getElementById("barText").innerHTML = years;
} else if(value > 0) {
years = years + 1;
document.getElementById("barText").innerHTML = years;
} else {
alert("Error!");
}
}
如果函数的value
输入为负数,则程序将年份减去 1,而对于任何其他情况则相反(显然,value
输入为 == 0 时除外)
有人看到问题了吗?我也尝试过与.getYear()
一起.getFullYear()
没有运气:/
setFullYear() 返回1970 年 1 月 1 日 00:00:00 UTC 与更新日期之间的毫秒数。
让您的代码正常工作
替换此行
var years = new Date().setFullYear(new Date().getFullYear());
有了这个
var years = new Date(new Date().setFullYear(new Date().getFullYear())).getFullYear(); //as you want year from here
我不知道你为什么要这样做,因为new Date(new Date().setFullYear(new Date().getFullYear())).getFullYear()
等于new Date().getFullYear()
.所以你也可以这样做
var years = new Date().getFullYear();
Date 对象的值是自 UTC 时间 1970 年 1 月 1 日午夜以来的毫秒数。
替换此行
var years = new Date().setFullYear(new Date().getFullYear());
有了这个
var years = new Date(new Date().setFullYear(new Date().getFullYear()));