如何使用 GScript 搜索我的所有系列约会并控制输出,以便仅显示已设置系列约会的约会?
我已经创建了一个脚本,但总是显示所有约会,但只应显示“设置约会”。
我在哪里犯了错误 - 或者谁可以给我举个例子来说明我陷入困境的地方?
谢谢
function getRecurringEvents() {
var calendar = CalendarApp.getDefaultCalendar();
var now = new Date();
var oneYearFromNow = new Date(now.getFullYear() + 1, now.getMonth(), now.getDate());
var events = calendar.getEvents(now, oneYearFromNow);
var recurringEvents = events.filter(function(event) {
return event.isRecurringEvent();
});
for (let i = 0; i < recurringEvents.length; i++) {
Logger.log(recurringEvents[i].getTitle());
}
}
尝试:
function getRecurringEvents() {
var calendar = CalendarApp.getDefaultCalendar();
var now = new Date();
var oneYearFromNow = new Date(now.getFullYear() + 1, now.getMonth(), now.getDate());
var events = calendar.getEvents(now, oneYearFromNow);
var masterEvents = new Set();
// Filter recurring events and collect the series (master) events
for (var i = 0; i < events.length; i++) {
var event = events[i];
if (event.isRecurringEvent()) {
// Get the series (master) event
var series = event.getSeries();
if (!masterEvents.has(series.getId())) {
masterEvents.add(series.getId());
Logger.log(series.getTitle());
}
}
}
}