Javascript 使用阵列&;将天添加到日期数组的Map方法

Javascript 使用阵列&;将天添加到日期数组的Map方法,javascript,datetime,Javascript,Datetime,我正在编写一个脚本,试图使用Arrays&Map方法在googlesheets中将numdays添加到数组中 下图是数据的一个示例 当我运行代码时,它只是以另一种格式再次返回数据,我不明白为什么它不能将numdays添加到数据中。我对在应用程序脚本中使用数组还不熟悉,所以我对这里出了什么问题感到非常困惑 提前谢谢 将年、月、日、小时、分、秒和毫秒添加到日期中 在这种特殊情况下,请注意: function new_date() { const ss=SpreadsheetApp.getAct

我正在编写一个脚本,试图使用Arrays&Map方法在googlesheets中将numdays添加到数组中

下图是数据的一个示例

当我运行代码时,它只是以另一种格式再次返回数据,我不明白为什么它不能将numdays添加到数据中。我对在应用程序脚本中使用数组还不熟悉,所以我对这里出了什么问题感到非常困惑


提前谢谢

将年、月、日、小时、分、秒和毫秒添加到日期中

在这种特殊情况下,请注意:

function new_date() {
  const ss=SpreadsheetApp.getActive()
  const sh=ss.getActiveSheet();
  const v=sh.getRange(2,5,sh.getLastRow()-1,1).getValues();
  const ndt=v.map(function(r,i){
    let dt=new Date(r[0]);
    let days=7;
    return [new Date(dt.getFullYear(),dt.getMonth(),dt.getDate()+days,dt.getHours(),dt.getMinutes(),dt.getMilliseconds())];
  });
  sh.getRange(2,5,ndt.length,ndt[0].length).setValues(ndt);
}
以毫秒为单位添加日期值的问题在于,它确实补偿了闰年等特殊情况。虽然这需要一个很长的行,但它现在允许您通过简单的整数数学将天数和小时等直接添加到日期,方法是将其添加到日期构造函数的相应部分


将年、月、日、小时、分钟、秒和毫秒添加到日期中

在这种特殊情况下,请注意:

function new_date() {
  const ss=SpreadsheetApp.getActive()
  const sh=ss.getActiveSheet();
  const v=sh.getRange(2,5,sh.getLastRow()-1,1).getValues();
  const ndt=v.map(function(r,i){
    let dt=new Date(r[0]);
    let days=7;
    return [new Date(dt.getFullYear(),dt.getMonth(),dt.getDate()+days,dt.getHours(),dt.getMinutes(),dt.getMilliseconds())];
  });
  sh.getRange(2,5,ndt.length,ndt[0].length).setValues(ndt);
}
以毫秒为单位添加日期值的问题在于,它确实补偿了闰年等特殊情况。虽然这需要一个很长的行,但它现在允许您通过简单的整数数学将天数和小时等直接添加到日期,方法是将其添加到日期构造函数的相应部分