0

我目前正在创建一个连接到 Google Calendar API 的简单登录表。当用户输入提示信息时,包括开始日期时间和结束时间,它应该根据用户输入创建一个日历事件。我设法做到了,所以它是一个日历事件。但是,时间真的很奇怪,我不明白时间是如何得出的。

对于下面的代码,我假设它会在 2016 年 12 月 16 日下午 2 点创建一个日历事件,但事实并非如此,它会在 2016 年 12 月 16 日上午 9 点创建一个事件。这是为什么?谢谢!

 function makeEvent(){
  //Get the variable details
  var eventDet = getInput();
  var event = {
      'summary': eventDet[0] + ' Appointment',
      'description': 'Telephone #: ' + eventDet[1] + ' Client Status: ' + eventDet[3],
      'start': {
        'dateTime': '2016-12-16T14:00:00Z',
        'timeZone': 'America/New_York'
      },
      'end': {
        'dateTime': '2016-12-16T14:00:00Z',
        'timeZone': 'America/New_York'
      },
      'attendees': [
        {'email': 'lpage@example.com'},
        {'email': 'sbrin@example.com'}
      ],
      'reminders': {
        'useDefault': false,
        'overrides': [
          {'method': 'email', 'minutes': 24 * 60},
          {'method': 'popup', 'minutes': 10}
        ]
      }
  };
4

1 回答 1

0

…Z始终是 UTC。2016-12-16T14:00:00Z,现在是纽约市上午 9 点。

要在纽约市获得下午 2 点,请尝试不使用Z以便根据timezone字段对其进行解析,或者直接传递2016-12-16T19:00:00Z您想要的时间戳。

于 2016-12-16T14:24:44.400 回答