javascript - 谷歌应用程序脚本中的减去天数将不会反射(reflect)当年的正确更改

标签 javascript date datetime google-apps-script

我正在尝试按照这篇文章中的解决方案减去谷歌应用程序脚本中的天数: Trying to subtract 5 days from a defined date - Google App Script

但是,如果我们从一年的第一天减去一天,年份不会减 1。 下面是我的代码:

var StartDate = new Date(ResponceDetails[C3StartDate]);
var StartYear = StartDate.getYear();
var StartMonth = StartDate.getMonth();
var StartDay = StartDate.getDate();
var tempEndDate = new Date(StartYear+1, StartMonth, StartDay);
Logger.log(StartDate);
Logger.log(tempEndDate);
var EndDate = Utilities.formatDate(new Date(tempEndDate.getTime()-(24*3600*1000)),"GMT+8","MM/dd/YYYY");
Logger.log(EndDate);

此代码的目的是计算 1 年后用户的到期日(包括开始日)。因此必须加上一年并减去 1 天。上面的代码可以吗?或者有人有类似的问题吗?

谢谢

最佳答案

解决了我的问题! Utilities.formatDate(...) 中的年份 YYYY 必须是小写字母 yyyy

更新后的代码:

var StartDate = new Date(ResponceDetails[C3StartDate]);
var StartYear = StartDate.getYear();
var StartMonth = StartDate.getMonth();
var StartDay = StartDate.getDate();
var EndDate = Utilities.formatDate(new Date(StartYear+1, StartMonth, StartDay-1), "GMT+8", "MM/dd/yyyy");
但非常感谢任何更好的方法来做到这一点。 如果有人有关于日期格式的好的文档或引用资料,那么解释日期格式的详细信息确实很有帮助。非常感谢!

关于javascript - 谷歌应用程序脚本中的减去天数将不会反射(reflect)当年的正确更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/59554220/

相关文章:

objective-c - 在 xcode 标签中创建日期

python - 在 Python 中从 dateutil.parser.parse 获取时区

python - 比较 Python 中的两个日期对象 : TypeError: '<' not supported between instances of 'datetime.date' and 'method'

javascript - 如何使用 JavaScript 将 Canvas 的背景颜色设置为白色?

javascript - 如何检测Chrome默认搜索引擎

javascript - jQuery - 获取元素的单个计数

ruby - 如何编写条件 : 'can this string be converted into a date type' ? (ruby)

javascript 日期时间比较

javascript - SQL Server 和 Javascript 之间的时区名称转换

javascript - html2canvas 插件不捕获图像