如何用getEndTime()创建一个新的EndTime

问题描述 投票:0回答:1

我将管理我的日历,关于一个简单的脚本,它将日历项目进一步移动60分钟。

对于此功能,请使用此Google Apps脚本:

function myFunction() {
  var cal = CalendarApp.getCalendarById("[email protected]");  
  cal.createEvent("TTIITTEELL", new Date("02/06/2018 18:00:00"), new Date("02/06/2018 19:00:00"));

  var events = cal.getEvents(new Date("02/05/2018"), new Date("02/07/2018"));

  for (var i=0;i<events.length;i++) {
    if (events[i].getTitle() == "TTIITTEELL") {
      var t = events[i].getEndTime();
      var text = new Date(events[i].getEndTime()+.........);
    }
  }
}

脚本正在运行,但我找不到创建新Time的逻辑。

当我取一个“+”时,它是一个减去的计算,所以 - 这里是一些例子:

Take:+5 = from:Tue Feb 06 2018 19:00:00 GMT + 0100(MEZ) - > to:Tue Feb 06 2018 18:55:00 GMT + 0100(MEZ)

Take:-5 = from:Tue Feb 06 2018 19:00:00 GMT + 0100(MEZ) - > to:Tue Feb 06 2018 18:59:59 GMT + 0100(MEZ)

取:+60 =来自:Tue Feb 06 2018 19:00:00 GMT + 0100(MEZ) - > to:无效日期

取:-60 * 60 * 24 * 1000 * 1000 =自:2月06日2018年19:00:00 GMT + 0100(MEZ) - >至:2015年5月13日星期三20:00:00 GMT + 0200(MESZ)

取:+ 60 * 60 * 24 * 1000 * 1000 =自:Tue Feb 06 2018 19:00:00 GMT + 0100(MEZ) - >至:无效日期

我的错误在哪里?

date google-calendar-api
1个回答
1
投票

这个答案怎么样?在您的脚本中,events[i].getEndTime()是日期的对象。因此,当数字添加到对象时,它不会成为您想要的结果。如果需要加法和减法,可以使用以下脚本。请修改如下。

From :

var t = events[i].getEndTime();
var text = new Date(events[i].getEndTime()+.........);

To :

在这种情况下,作为样本,我将+5, -5, +60, -60的单位设置为“分钟”。

var num = 5; // Please input 5, -5, 60, -60, ...
var t = events[i].getEndTime().getTime();
var text = new Date(t + num * 60 * 1000);

如果我误解你的问题,我很抱歉。

© www.soinside.com 2019 - 2024. All rights reserved.