JavaScript

Date.prototype.getTimezoneOffset() メソッド

 編集:2022.12.05 by T.A.

[Edge]。→

ホスト システム上の現在の日時から協定世界時(UTC)までの分単位のタイムゾーン オフセットの分単位を表す数値で返します。

mdn: getTimezoneOffset() メソッドは、(ホスト システム上における)現在のロケールから協定世界時(UTC)までのタイムゾーンの差を分単位で返します。

構文
Date.getTimezoneOffset()
Date Date
返り値

mdn: ホスト システム上の現在の日付から協定世界時(UTC)までの分単位のタイムゾーン オフセットを表す数値です。

解説/mdn

タイムゾーン オフセットは、地方時から協定世界時(UTC)までの間の分単位の差です。

このオフセットは、地方時が UTC より遅れている時刻の場合は正の数になり、進んでいる時刻の場合は負の数になることを意味します。例えば、タイムゾーンが UTC+10:00(オーストラリア東部標準時、ロシアのウラジオストク時、チャモロ標準時)の場合、-600 が返されます。

現在のロケール UTC-8 UTC UTC+3
返値 480 0 -180

返されるタイムゾーン オフセットは呼ばれた Date で適用されているものです。

ホスト システムで夏時間が設定されている場合、Date が表す日時と夏時間が適用される日時によって、オフセットが変わります。

/mdn
// ホスト デバイスの現在のタイムゾーン オフセットを取得する
let x = new Date();
let currentTimeZoneOffsetInHours = x.getTimezoneOffset() / 60;
// 1

// 2016 年の国際労働者の日 (5 月 1 日) のタイムゾーン オフセットを取得します。
// Date() コンストラクターは 0 から始まる月を使用するため、5 月は (5 ではなく) 4 で表されます。
let labourDay = new Date(2016, 4, 1)
let labourDayOffset = labourDay.getTimezoneOffset() / 60;
N=new Date();
D=N.getTimezoneOffset();  //=[number]:-540
N.setMinutes(100);
D=N.getTimezoneOffset();  //=[number]:-540

時間をずらしても変わらない、つまり N は Date オブジェクトならなんでもいいのかも。


テスト