我想在今天的日期添加一年.我在一个不允许你使用standard
JavaScript 的系统中工作.
例如,要获得今天的日期,我必须使用:
javascript:now();
Run Code Online (Sandbox Code Playgroud)
我试过了:
javascript:now(+1);
Run Code Online (Sandbox Code Playgroud)
我以前从未见过这个,但我需要在今天的日期增加一年......
有没有人见过这样的当前约会?如果是这样,我怎么能加一年?
Jon*_*ams 76
您可以使用以下代码创建具有今天日期的新日期对象:
var d = new Date();
console.log(d);
// => Sun Oct 11 2015 14:46:51 GMT-0700 (PDT)
Run Code Online (Sandbox Code Playgroud)
如果要在特定时间创建日期,可以传递新的Date构造函数参数
var d = new Date(2014);
console.log(d)
// => Wed Dec 31 1969 16:00:02 GMT-0800 (PST)
Run Code Online (Sandbox Code Playgroud)
如果要获取今天的日期并添加一年,可以先创建日期对象,访问相关属性,然后使用它们创建新的日期对象
var d = new Date();
var year = d.getFullYear();
var month = d.getMonth();
var day = d.getDate();
var c = new Date(year + 1, month, day)
// => Tue Oct 11 2016 00:00:00 GMT-0700 (PDT)
Run Code Online (Sandbox Code Playgroud)
您可以在MDN上阅读有关日期对象上的方法的更多信息
Jon*_*ops 61
使用Date.prototype.setFullYear方法将年份设置为您希望的年份.
例如:
var aYearFromNow = new Date();
aYearFromNow.setFullYear(aYearFromNow.getFullYear() + 1);
Run Code Online (Sandbox Code Playgroud)
如果在您正在使用的环境中不存在这些方法,那么在JavaScript中确实没有其他方法可以使用日期.
此代码添加日期所需的年数。
var d = new Date();
// => Tue Oct 01 2017 00:00:00 GMT-0700 (PDT)
var amountOfYearsRequired = 2;
d.setFullYear(d.getFullYear() + amountOfYearsRequired);
// => Tue Oct 01 2019 00:00:00 GMT-0700 (PDT)
Run Code Online (Sandbox Code Playgroud)
如此处建议的一种衬板
JP DeVries 如何用JavaScript确定从现在起一年
new Date(new Date().setFullYear(new Date().getFullYear() + 1))
Run Code Online (Sandbox Code Playgroud)
或者,您可以从变量中的某处获取年数:
const nr_years = 3;
new Date(new Date().setFullYear(new Date().getFullYear() + nr_years))
Run Code Online (Sandbox Code Playgroud)
小智 5
我喜欢将其放在一行中,您可以为此使用自调用函数,例如:
如果你想在一行中获取+1 年的时间戳
console.log(
(d => d.setFullYear(d.getFullYear() + 1))(new Date)
)
Run Code Online (Sandbox Code Playgroud)
如果你想用单行获取日期对象
console.log(
(d => new Date(d.getFullYear() + 1, d.getMonth(), d.getDate()))(new Date)
)
Run Code Online (Sandbox Code Playgroud)