1

タイムゾーンに問題があり、奇妙な結果が得られます。

新しいカレンダーで小さなコードをテストしています。2012 年 11 月 7 日 22:00 から 23:00 にテスト イベントを行いました。

function myFunction() {
  Logger.clear();
  var calendar=CalendarApp.getCalendarById("foo@group.calendar.google.com");
  var now=new Date();
  Logger.log(calendar.getTimeZone());
  Logger.log(Session.getTimeZone());
  Logger.log(now.toISOString());
  Logger.log(now.toUTCString());
  Logger.log(calendar.getEventsForDay(now)[0].getStartTime());
}

これは、11 月 7 日 00:29 に実行した結果です。

Europe/Rome
Europe/Rome
2012-11-06T23:28:25.889Z
Tue, 06 Nov 2012 23:28:25 GMT
Wed Nov 07 13:00:00 PST 2012

古いブログ投稿http://googleappsscript.blogspot.it/2011/03/demystifying-time-zones-in-apps-script_21.htmlを読みましたが、役に立ちません。

カレンダーのタイムゾーン (またはスクリプトのタイムゾーン) で開始日を取得するにはどうすればよいですか?

4

1 に答える 1

0

日付を文字列に変換する場合、使用されるタイムゾーンはサーバーのタイムゾーンです。文字列表現が目的のタイムゾーン(この場合はスクリプト)にあることを確認するには、ここに記載されているメソッドを使用する必要がありUtilities.formatDate()ます。

于 2012-11-15T03:57:33.683 に答える