繁体   English   中英

将 1 天添加到日期变量

[英]Adding 1 day to a date variable

在电子表格中,我可以在一个单元格中输入日期,然后在下一个单元格中输入 =A1+1,然后将 1 天添加到单元格 A1 中的日期。 我想在脚本中做同样的事情。

我可以使用以下方法将日期变量设置为今天的日期。

var dateTracking = "";
dateTracking = currentDate;

但是如果我尝试将 1 添加到 dateTracking 那么它会将变量从日期格式更改为字符串

dateTracking = dateTracking + 1;

我只想要一个快速简单的解决方案,将 1 天或更多天添加到日期变量。

先前的答案适用于增加天数,但在我编写脚本时,我发现自己也需要增加数月。 我可以只添加 dayInMS*30.4167 但这会让我在一天中有一些差异。 我希望每个月都得到相同的日期。

这是我找到的一个解决方案,它适用于增加天数、月数、年数。

  var currentDate = new Date();
  var monthTest = "";
  var monthTest2 = "";
  var monthTest3 = "";
  var year = "";
  var month = "";
  var day = "";

  //start at today
  dateTracking = currentDate;

  //testing month
  day = dateTracking.getDate();
  month = dateTracking.getMonth();
  year = dateTracking.getYear();
  monthTest = new Date(year, month, day+1);
  monthTest2 = new Date(year, month+1, day);
  monthTest3 = new Date(year+1, month, day);

使用脚本并不像在电子表格中那样简单

有多种方法可以实现您的请求,但最简单的方法可能是:

  • 使用getTime()将日期转换为 ms
  • 添加相当于一天的毫秒(24*60*60*1000)
  • 使用new Date()将 ms 转换回日期

样本:

var dateTracking=new Date() // returns the date of today
var dateTrackingInMs=dateTracking.getTime();
var dayInMs=24*60*60*1000;
var newDateTracking=new Date(dateTrackingInMs+dayInMs);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM