LoginSignup
3
0

More than 1 year has passed since last update.

GASでタイムゾーンを設定する方法を調べてみた

Posted at

はじめに

Google Apps Scriptで、日付操作ライブラリであるDay.jsを使っていたときに、現在時刻を取得しようとしたら日本時間ではない時間が取得されてしまいました。関数の方にタイムゾーンを設定しても上手くいかず少し迷ってしまったので、今回はGASでタイムゾーンを設定する方法をまとめようと思います。

GASでタイムゾーンを設定する方法を調べてみた

事前に

今回は時間を取得するためにDay.jsというライブラリを使います。ライブラリの追加する方法は、GASのエディタを開き、ライブラリから以下のコードを貼り付けて検索、追加してください。

  • コード:1ShsRhHc8tgPy5wGOzUvgEhOedJUQD53m-gd8lG2MOgs-dXC_aCZn9lFB
  • 参考資料

追加されると、以下のように表示されます。
スクリーンショット 2022-12-06 14.03.18.png

本題

さて、本題に移ります。以下のスクリプトを動かしてみたところ、違うタイムゾーンの結果が返ってきました。

const getTime = () => console.log(dayjs.dayjs().toDate());
// Tue Dec 06 2022 00:08:04 GMT-0500 (Eastern Standard Time)

関数の方をいじってみましたが上手くいかず、調べてみたところプロジェクトの設定から変更できることがわかりました。GASのエディタの左サイドバーにある歯車マークをクリックすると、タイムゾーンを設定する箇所が出てきます。そこから、自分が使いたいタイムゾーンに設定してください。

スクリーンショット 2022-12-06 14.14.47.png

ちなみにプロジェクトの設定以外からタイムゾーンを変更することも可能です。GASにはプロジェクトのマニュフェストファイルであるappsscript.jsonがあり、そこからタイムゾーンを設定することも可能です。

以下のようなファイルになっているため、timezoneの箇所を自分が使いたいタイムゾーンに書き換えることで変更可能です (今回はDay.jsライブラリを追加しているため、ライブラリが追加されています)

appsscript.json
{
  "timeZone": "America/New_York",
  "dependencies": {
    "libraries": [
      {
        "userSymbol": "dayjs",
        "version": "1",
        "libraryId": "1ShsRhHc8tgPy5wGOzUvgEhOedJUQD53m-gd8lG2MOgs-dXC_aCZn9lFB"
      }
    ]
  },
  "exceptionLogging": "STACKDRIVER",
  "runtimeVersion": "V8"
}

さいごに

今回は、簡単ではありますがGASでタイムゾーンを設定する方法についてまとめてみました。

3
0
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
0