Google App Script(以下GAS表記) で日付や時間を new Date()
で扱う際には注意が必要です。
GAS を書く場合デフォルトの状態だとタイムゾーンが "timeZone": "America/New_York"
,
となってしまうため、 new Date()
のように日付を取得しようとした時に JST(Japan Standard Time) が取得されません。
new Date(); // => Sat Mar 13 2021 23:26:52 GMT-0500 (Eastern Standard Time)
appscript.json からタイムゾーンを変更する
これは、 appscript.json に記載されているタイムゾーンの設定が Amerika/New_York
になっているのが原因なので、これを変更してあげれば解決できます。
エディタのファイルリストに appscript.json
が表示されていない場合は、左メニューの プロジェクトの設定 より、全体の設定 =>
「appsscript.json」マニフェスト ファイルをエディタで表示する にチェックを入れます。
エディタのファイルリストに appscript.json が表示されるようになっているかと思います。
ファイルを開いて、中の Timezone
の項目を Asia/Tokyo
に変更すれば完了です。
new Date()
を実行して、タイムゾーンの変更を確認します。
new Date(); // => Sun Mar 14 2021 14:38:04 GMT+0900 (Japan Standard Time)
無事、JST が返ってくるようにタイムゾーンを変更することができました。