将今年添加到今天的日期

时间:2015-10-11 21:44:50

标签: javascript date

我想在今天的日期添加一年。我正在使用一个不允许您使用standard JavaScript的系统。

例如,要获得今天的日期,我必须使用:

javascript:now();

我试过了:

javascript:now(+1);

我以前从未见过这个,但我需要在今天的日期增加一年...

有没有人见过这样的当前日期?如果是这样,我怎么能加一年?

11 个答案:

答案 0 :(得分:59)

您可以使用以下代码创建具有今天日期的新日期对象:

var d = new Date();
console.log(d);
// => Sun Oct 11 2015 14:46:51 GMT-0700 (PDT)

如果要在特定时间创建日期,可以传递新的Date构造函数参数

var d = new Date(2014);
console.log(d)
// => Wed Dec 31 1969 16:00:02 GMT-0800 (PST)

如果您想要今天的日期并添加一年,您可以先创建一个日期对象,访问相关属性,然后使用它们来创建一个新的日期对象

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)

您可以在MDN上阅读有关日期对象上的方法的更多信息

Date Object

答案 1 :(得分:49)

使用Date.prototype.setFullYear方法将年份设置为您想要的年份。

例如:

var aYearFromNow = new Date();
aYearFromNow.setFullYear(aYearFromNow.getFullYear() + 1);

如果在您正在使用的环境中不存在这些方法,那么在JavaScript中没有其他方法可以使用日期。

答案 2 :(得分:3)

这里建议的一个衬里

How to determine one year from now in Javascript 通过JP DeVries

new Date(new Date().setFullYear(new Date().getFullYear() + 1))

或者您可以从变量中的某处获取年数:

const nr_years = 3;
new Date(new Date().setFullYear(new Date().getFullYear() + nr_years))

答案 3 :(得分:2)

此代码添加日期所需的年数。

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)

答案 4 :(得分:2)

我喜欢将其放在一行中,您可以为此使用自调用函数:

如果您想单行获得+1年的时间戳

console.log(
  (d => d.setFullYear(d.getFullYear() + 1))(new Date)
)

如果您想获得日期单行对象

console.log(
  (d => new Date(d.getFullYear() + 1, d.getMonth(), d.getDate()))(new Date)
)

答案 5 :(得分:1)

在Angular中,这是您计算日期的方式

func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
    ...
    cell.backgroundColor = indexPath == selectedIndexPath ? .black : .white
    ...
}

答案 6 :(得分:0)

如果要在今天的日期之外,使用年,月或天来向特定日期添加年。您可以执行以下操作

var christmas2000 = new Date(2000, 12, 25); 
christmas2000.setFullYear(christmas2000.getFullYear() + 5); // using year: next 5 years
christmas2000.setFullYear(christmas2000.getMonth() + 24); // using months: next 24 months
christmas2000.setFullYear(christmas2000.getDay() + 365); // using days: next 365 months

答案 7 :(得分:0)

    var d = new Date();
    var year = d.getFullYear();
    var month = d.getMonth();
    var day = d.getDate();

    var fulldate = new Date(year + 1, month, day);

    var toDate = fulldate.toISOString().slice(0, 10);

    $("#txtToDate").val(toDate);

    output : 2020-01-02

答案 8 :(得分:0)

var date = new Date();

var year = date.getFullYear();

var month = date.getMonth();

month = month +1;

如果(月<10){

month =“ 0” +月份; }

var day = date.getDate();

如果(天<10){

day =“ 0” +天; }

年=年+ 1;

var FullDate =年+“ /” +月+“ /” +天;

答案 9 :(得分:0)

var yearsToAdd = 5;
var current = new Date().toISOString().split('T')[0];
var addedYears = Number(this.minDate.split('-')[0]) + yearsToAdd + '-12-31';

答案 10 :(得分:-1)

//这段代码也将处理闰年添加。

function updateExpiryDate(controlID, value) {
    if ( $("#ICMEffectiveDate").val() != '' &&
        $("#ICMTermYears").val() != '') {

        var effectiveDate = $("#ICMEffectiveDate").val();
        var date = new Date(effectiveDate);
        var termYears = $("#ICMTermYears").val();

        date = new Date(date.setYear(date.getFullYear() + parseInt(termYears)));
        var expiryDate = (date.getMonth() + 1) + '/' + date.getDate() + '/' + date.getFullYear();
        $('#ICMExpiryDate').val(expiryDate);
    }
}