- Dateオブジェクトを使用する方法:
var date = new Date();
var offset = date.getTimezoneOffset();
console.log(offset);
このコードでは、new Date()
を使用して現在の日時を取得し、getTimezoneOffset()
メソッドを呼び出してクライアントのタイムゾーンオフセットを分単位で取得します。取得されるオフセットはUTCとの差を表します。
- Intl.DateTimeFormatを使用する方法:
var options = { timeZoneName: 'short' };
var formatter = new Intl.DateTimeFormat([], options);
var parts = formatter.formatToParts();
var offsetIndex = parts.findIndex(part => part.type === 'timeZoneName');
var offset = parseInt(parts[offsetIndex + 1].value);
console.log(offset);
このコードでは、Intl.DateTimeFormat
オブジェクトを使用して現在のタイムゾーン情報を取得し、formatToParts()
メソッドを呼び出してパーツの配列を取得します。配列内の適切なパーツを見つけ、オフセットを取得します。
これらの方法を使用すると、JavaScriptでクライアントのタイムゾーンオフセットを取得することができます。この情報を使用して、ブラウザ上での日時の表示やタイムゾーンに関連する他の処理を行うことができます。