Class RecurrenceRule

RecurrenceRule

表示活动系列的重复规则。

请注意,此类的行为方式也类似于其所属的 EventRecurrence,这允许您将规则创建链在一起,如下所示:

recurrence.addDailyRule().times(3).interval(2).addWeeklyExclusion().times(2);
times(times)interval(interval) 等修饰符会应用于最近添加的规则。

方法

方法返回类型简介
addDailyExclusion()RecurrenceRule添加规则,排除每天发生的重复事件。
addDailyRule()RecurrenceRule添加规则,使活动每天重复一次。
addDate(date)EventRecurrence添加规则,使活动在特定日期重复发生。
addDateExclusion(date)EventRecurrence添加规则,排除特定日期的重复实例。
addMonthlyExclusion()RecurrenceRule添加规则,排除每月发生一次。
addMonthlyRule()RecurrenceRule添加规则,使活动每月重复一次。
addWeeklyExclusion()RecurrenceRule添加规则,排除每周发生的重复事件。
addWeeklyRule()RecurrenceRule添加规则,使事件每周重复一次。
addYearlyExclusion()RecurrenceRule添加规则,排除每年发生一次。
addYearlyRule()RecurrenceRule添加规则,使活动每年重复一次。
interval(interval)RecurrenceRule将规则配置为仅在规则的时间单位的此间隔内应用。
onlyInMonth(month)RecurrenceRule将规则配置为仅应用于特定月份。
onlyInMonths(months)RecurrenceRule将规则配置为仅应用于特定月份。
onlyOnMonthDay(day)RecurrenceRule将规则配置为仅应用于一个月中的特定日期。
onlyOnMonthDays(days)RecurrenceRule将规则配置为仅应用于一个月中的特定日期。
onlyOnWeek(week)RecurrenceRule将规则配置为仅应用于一年中的特定周。
onlyOnWeekday(day)RecurrenceRule将规则配置为仅应用于一周中的特定日期。
onlyOnWeekdays(days)RecurrenceRule将规则配置为仅应用于一周中的特定几天。
onlyOnWeeks(weeks)RecurrenceRule将规则配置为仅应用于一年中的特定周。
onlyOnYearDay(day)RecurrenceRule将规则配置为仅应用于一年中的特定日期。
onlyOnYearDays(days)RecurrenceRule将规则配置为仅应用于一年中的特定日期。
setTimeZone(timeZone)EventRecurrence设置此重复周期的时区。
times(times)RecurrenceRule将规则配置为在发生给定次数后结束。
until(endDate)RecurrenceRule将规则配置为在指定日期(含此日期)结束。
weekStartsOn(day)RecurrenceRule配置一周的起始日,以便应用规则。

详细文档

addDailyExclusion()

添加规则,排除每天的重复实例。

// Creates a rule that recurs every week after the first 30 days.
var recurrence = CalendarApp.newRecurrence().addWeeklyRule().addDailyExclusion().times(30);

弃踢回攻

RecurrenceRule - 新的 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addDailyRule()

添加规则,使活动每天重复一次。

// Creates a rule that recurs every day for ten days.
var recurrence = CalendarApp.newRecurrence().addDailyRule().times(10);

弃踢回攻

RecurrenceRule - 新的 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addDate(date)

添加规则,使活动在特定日期重复发生。

参数

名称类型说明
dateDate

弃踢回攻

EventRecurrence - 此 EventRecurrence(用于链接)

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addDateExclusion(date)

添加规则,排除特定日期的重复实例。

参数

名称类型说明
dateDate

弃踢回攻

EventRecurrence - 此 EventRecurrence(用于链接)

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addMonthlyExclusion()

添加规则,排除每月发生一次。

默认情况下,系统会针对相应系列中的第一个事件在当月的同一天应用排除项,但可以通过调用 onlyOnMonthDay(day)onlyOnMonthDays(days) 更改此设置。

弃踢回攻

RecurrenceRule - 新的 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addMonthlyRule()

添加规则,使活动每月重复一次。

默认情况下,该事件在当月的同一天重复发生(作为系列中第一个事件),但可通过调用 onlyOnMonthDay(day)onlyOnMonthDays(days) 进行更改。

// Creates a rule that recurs every month for three months.
var recurrence = CalendarApp.newRecurrence().addMonthlyRule().times(4);

弃踢回攻

RecurrenceRule - 新的 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addWeeklyExclusion()

添加规则,排除每周发生的事件。

默认情况下,排除操作会应用于系列中第一个事件对应的星期几,但可通过调用 onlyOnWeekday(day)onlyOnWeekdays(days) 进行更改。

// Creates a rule that recurs every day except the first four Wednesdays.
var recurrence = CalendarApp.newRecurrence().addDailyRule()
    .addWeeklyExclusion().onlyOnWeekday(CalendarApp.Weekday.WEDNESDAY).times(4);

弃踢回攻

RecurrenceRule - 新的 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addWeeklyRule()

添加规则,使事件每周重复一次。

默认情况下,该事件作为系列中的第一个事件在一周的同一天重复,但可以通过调用 onlyOnWeekday(day)onlyOnWeekdays(days) 进行更改。

// Creates a rule that recurs every week for ten weeks.
var recurrence = CalendarApp.newRecurrence().addWeeklyRule().times(10);

弃踢回攻

RecurrenceRule - 新的 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addYearlyExclusion()

添加每年排除一次的规则。

默认情况下,排除操作会应用于系列中第一个事件的同一天(同一天),但可以通过调用 onlyOnYearDay(day)onlyOnYearDays(days) 进行更改。

弃踢回攻

RecurrenceRule - 新的 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

addYearlyRule()

添加规则,使活动每年重复一次。

默认情况下,该事件作为系列中的第一个事件在一年中的同一天重复,但可以通过调用 onlyOnYearDay(day)onlyOnYearDays(days) 进行更改。

弃踢回攻

RecurrenceRule - 新的 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

interval(interval)

将规则配置为仅在规则的时间单位的此间隔内应用。

// Creates a rule that recurs every fourth week.
var recurrence = CalendarApp.newRecurrence().addWeeklyRule().interval(4);

参数

名称类型说明
intervalInteger规则的时间单位中的时间间隔

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyInMonth(month)

将规则配置为仅应用于特定月份。

// Creates a rule that recurs every week in February.
var recurrence = CalendarApp.newRecurrence()
    .addWeeklyRule().onlyInMonth(CalendarApp.Month.FEBRUARY);

参数

名称类型说明
monthMonth本月

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyInMonths(months)

将规则配置为仅应用于特定月份。

// Creates a rule that recurs every week in February and March.
var recurrence = CalendarApp.newRecurrence()
    .addWeeklyRule().onlyInMonths([CalendarApp.Month.FEBRUARY, CalendarApp.Month.MARCH]);

参数

名称类型说明
monthsMonth[]

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyOnMonthDay(day)

将规则配置为仅应用于一个月中的特定日期。

// Creates a rule that recurs every month on the fifth day of the month.
var recurrence = CalendarApp.newRecurrence().addMonthlyRule().onlyOnMonthDay(5);

参数

名称类型说明
dayInteger日期

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyOnMonthDays(days)

将规则配置为仅应用于一个月中的特定日期。

// Creates a rule that recurs every month on the first and fifteenth day of the month.
var recurrence = CalendarApp.newRecurrence().addMonthlyRule().onlyOnMonthDays([1, 15]);

参数

名称类型说明
daysInteger[]几号

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyOnWeek(week)

将规则配置为仅应用于一年中的特定周。

// Creates a rule that recurs on the fifth week of every year.
var recurrence = CalendarApp.newRecurrence().addWeeklyRule().onlyOnWeek(5);

参数

名称类型说明
weekInteger本周

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyOnWeekday(day)

将规则配置为仅应用于一周中的特定日期。

// Creates a rule that recurs every week on Wednesdays.
var recurrence = CalendarApp.newRecurrence()
    .addWeeklyRule().onlyOnWeekday(CalendarApp.Weekday.WEDNESDAY);

参数

名称类型说明
dayWeekday星期几

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyOnWeekdays(days)

将规则配置为仅应用于一周中的特定几天。

// Creates a rule that recurs every week on Tuesdays and Thursdays.
var recurrence = CalendarApp.newRecurrence()
    .addWeeklyRule().onlyOnWeekdays(
        [CalendarApp.Weekday.TUESDAY, CalendarApp.Weekday.THURSDAY]);

参数

名称类型说明
daysWeekday[]周几

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyOnWeeks(weeks)

将规则配置为仅应用于一年中的特定周。

// Creates a rule that recurs on the fifth and tenth weeks of every year.
var recurrence = CalendarApp.newRecurrence().addWeeklyRule().onlyOnWeeks([5, 10]);

参数

名称类型说明
weeksInteger[]

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyOnYearDay(day)

将规则配置为仅应用于一年中的特定日期。

// Creates a rule that recurs every year on February 15 (the 46th day).
var recurrence = CalendarApp.newRecurrence().addYearlyRule().onlyOnYearDay(46);

参数

名称类型说明
dayInteger全年的第几天

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


onlyOnYearDays(days)

将规则配置为仅应用于一年中的特定日期。

// Creates a rule that recurs every year on January 20 and February 15.
var recurrence = CalendarApp.newRecurrence().addYearlyRule().onlyOnYearDay([20, 46]);

参数

名称类型说明
daysInteger[]一年中的第几天

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


setTimeZone(timeZone)

设置此重复周期的时区。这会影响事件重复发生的日期和时间,以及事件是否随夏令时变化。默认设置为日历的时区。

参数

名称类型说明
timeZoneString以“long”格式指定的时区(例如,“America/New_York”,由 Joda.org 列出)

弃踢回攻

EventRecurrence - 此 EventRecurrence(用于链接)

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

times(times)

将规则配置为在发生给定次数后结束。

// Creates a rule that recurs every day for ten days.
var recurrence = CalendarApp.newRecurrence().addDailyRule().times(10);

参数

名称类型说明
timesInteger重复周期

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule


until(endDate)

将规则配置为在指定日期(含此日期)结束。

// Creates a rule that recurs every day through the end of 2013.
var recurrence = CalendarApp.newRecurrence()
    .addDailyRule().until(new Date('December 31, 2013'));

参数

名称类型说明
endDateDate

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule

授权

使用此方法的脚本需要获得以下一个或多个范围相关 REST API 的适当范围的授权:

  • https://www.googleapis.com/auth/calendar
  • https://www.google.com/calendar/feeds

weekStartsOn(day)

配置一周的起始日,以便应用规则。

// Creates a weekly rule where weeks start on Monday.
var recurrence = CalendarApp.newRecurrence()
    .addWeeklyRule().weekStartsOn(CalendarApp.Weekday.MONDAY);

参数

名称类型说明
dayWeekday一周起始日

弃踢回攻

RecurrenceRule - 用于链接的此 RecurrenceRule