📅

[Day.js] UTCでパースして特定タイムゾーンでフォーマットする

2023/04/13に公開

きっかけ

  • サーバからフェッチしてきたUTCの時間文字列(RFC3339)を、(ブラウザで設定されたタイムゾーンではなく)任意のタイムゾーンでフォーマットする必要があった。

参考

結論

dayjs.extend(utc)

const tz = "Asia/Tokyo"
dayjs("2016-05-03T22:15:01").utc(true).tz(tz).format()
// 2016-05-03 22:15:01+09:00

もしくは、

dayjs.extend(utc)

const tz = "Asia/Tokyo"
var a = dayjs.utc("2016-05-03T22:15:01")
a.tz(tz).format()
// 2016-05-03 22:15:01+09:00

Discussion