Javascript 如何在JS中为UTC添加天数?

Javascript 如何在JS中为UTC添加天数?,javascript,date,Javascript,Date,我读了很多相关的问题,但就是想不出这个问题 这就是我所拥有的: var days = "10"; // input is in string var now = new Date(); var nowUtc = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds()); var newDate =

我读了很多相关的问题,但就是想不出这个问题

这就是我所拥有的:

var days = "10"; // input is in string
var now = new Date();
var nowUtc = new Date(now.getUTCFullYear(), now.getUTCMonth(), now.getUTCDate(), now.getUTCHours(), now.getUTCMinutes(), now.getUTCSeconds());
var newDate = nowUtc.setDate(nowUtc.getDate() + parseInt(days));
这些值似乎不正确,所以我一定是做错了。有人能帮忙吗

我希望最后的值是ISO 8601格式


谢谢

setDate
更改日期对象本身。您可以使用
nowUtc.toISOString()
获取ISO 8601字符串

nowUtc.setDate(nowUtc.getDate() + parseInt(days));
var iso = nowUtc.toISOString();
Just use-一个简化JavaScript中日期时间操作的库

你要找的是功能和功能


我希望它能帮助你

请注意,
nowUtc.setDate()
nowUtc
更改到位,并返回一个数字,而不是日期。这如何与“添加天数”重复?这个问题特别提到UTC,而链接的答案没有提到。
var nowUtc=new Date(…)
语句使用UTC值作为输入,但日期构造函数需要本地值,因此应用当前主机时区偏移,因此会得到意外的结果。要复制日期实例日期,只需使用
newdate(Date)
;var newDate=新日期(Date.UTC(now.getUTCFullYear(),now.getUTCMonth(),now.getUTCDate()+parseInt(days),now.getUTCHours(),now.getUTCMinutes())@RPM1984有关如何复制日期,请参见上面的注释,这比使用Date.UTC简单得多。您也可以使用
新日期(now.getFullYear(),now.getMonth(),…)
,但前提是您的代码是按长度付费的。;-)但我想加上几天?这不是我需要设置日期的原因吗?