Copyright © 2023 - All right reserved by Junpei K.

Photo by Martin Sanchez

    🖌️ Table of Contents

    🖌️ TOC

  1. date-fns-tz
    date-fns-t...
  2. 参考
    参考

【JS】 date-fns-tzでタイムゾーンを考慮しつつ時刻をformatする

JavaScriptで、タイムゾーンを考慮しつつ時刻formatする際にdate-fns-tzが便利だったので紹介します。

date-fns-tz

date-fns-tzは、タイムゾーンを考慮した日時の「やりくり」に関する機能を提供するライブラリです。下のように実装することで、タイムゾーンに合わせた日時をフォーマットできます。

1import { formatInTimeZone } from 'date-fns-tz'
2
3const currentDate = Date.now()
4
5// format by date-fns-tz
6formatInTimeZone(currentDate, "Asia/Tokyo", "yyyy-MM-dd_HH:mm:ss")
7

の第2引数にタイムゾーンを文字列で指定、第3引数でどのような形式でフォーマットするかを指定しています。

ちなみに、指定できるタイムゾーンの一覧はこちら、フォーマットにあたっての書式(ISO 8601形式)の一覧はこちらなどから確認できます。

参考

  • https://blog.capilano-fw.com/?p=908
  • https://github.com/marnusw/date-fns-tz
  • https://www.hulft.com/help/ja-jp/WebFT-V3/COM-ADM/Content/WEBFT_ADM_COM/TimeZone/timezonelist.htm
  • https://tc39.es/ecma262/#sec-date-time-string-format