【JavaScript ECMAScript】Temporal::Temporal.ZonedDateTime.prototype.withTimeZoneインスタンスメソッドの使い方
Temporal.ZonedDateTime.prototype.withTimeZone()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。
基本的な使い方
Temporal.ZonedDateTime.prototype.withTimeZone()メソッドは、既存のTemporal.ZonedDateTimeオブジェクトのタイムゾーン情報を変更し、新しいタイムゾーンを持つTemporal.ZonedDateTimeオブジェクトを生成するメソッドです。
このメソッドは、引数として新しいタイムゾーンを指定する文字列、またはTemporal.TimeZoneオブジェクトを受け取ります。元のTemporal.ZonedDateTimeオブジェクトが指し示す絶対的な時間的瞬間(エポックからの経過時間)自体は変更されません。しかし、この絶対的な時間的瞬間が、指定された新しいタイムゾーンでは具体的にいつ(日付、時刻、オフセット)になるかを計算し、その結果を反映した新しいTemporal.ZonedDateTimeオブジェクトを返します。
元のTemporal.ZonedDateTimeオブジェクトは変更されず、不変性が保たれます。これは、異なるタイムゾーン間で同じ特定の時間的瞬間を表現したい場合や、ユーザーが異なるタイムゾーンで時刻を表示する必要がある国際的なアプリケーションにおいて非常に有用です。例えば、システムがあるイベントの時間をUTCで管理している場合に、それを日本時間やアメリカ東部時間で表示し直すといった状況で活用できます。これにより、日付と時刻の正確な表現とタイムゾーンの柔軟な管理が可能になります。
構文(syntax)
1const zonedDateTime = new Temporal.ZonedDateTime( 2 946684800000000000n, // 2000-01-01T00:00:00Z のナノ秒 3 'Europe/London' 4); 5 6const newZonedDateTime = zonedDateTime.withTimeZone('America/New_York');
引数(parameters)
timeZoneLike
- timeZoneLike: タイムゾーンを指定するオブジェクトまたは文字列
戻り値(return)
Temporal.ZonedDateTime
Temporal.ZonedDateTime.prototype.withTimeZone() メソッドは、指定されたタイムゾーンを持つ新しい Temporal.ZonedDateTime オブジェクトを返します。元のオブジェクトは変更されません。