Webエンジニア向けプログラミング解説動画をYouTubeで配信中!
▶ チャンネル登録はこちら

【JavaScript ECMAScript】Temporal::Temporal.PlainDateTime.prototype.sinceインスタンスメソッドの使い方

Temporal.PlainDateTime.prototype.since()インスタンスメソッドの使い方について、初心者にもわかりやすく解説します。

作成日: 更新日:

基本的な使い方

Temporal.PlainDateTime.prototype.since()メソッドは、現在のTemporal.PlainDateTimeオブジェクトと引数で指定された別のTemporal.PlainDateTimeオブジェクトとの間の期間を計算し、その結果をTemporal.Durationオブジェクトとして返すメソッドです。このメソッドは、タイムゾーンの概念を含まない「プレーンな」日付と時刻の差分を正確に測定するために設計されています。例えば、ある特定の日付時刻から別の特定の日付時刻までの経過期間を、年、月、日、時間、分、秒といった具体的な単位で正確に把握したい場合に非常に有用です。

このメソッドを使用すると、2つのPlainDateTimeオブジェクト間の差分が、年数、月数、日数、時間数など、個々の時間単位で構成されたTemporal.Durationオブジェクトとして得られます。オプション引数を利用することで、期間計算の際に使用する最大単位(例えば「日」までで計算する)や、丸め処理の方法などを細かく指定することが可能です。これにより、システムエンジニアの皆様が、様々な要件に対応した柔軟な期間計算ロジックを実装できるようになります。

Temporal APIはJavaScriptにおける日付と時刻の新しい標準であり、従来の日付オブジェクトに比べて、より堅牢で直感的な操作性を提供します。PlainDateTimeは、タイムゾーンに影響されずにカレンダー上の日時を扱うため、純粋な期間計算においてこのsince()メソッドは、日付関連の複雑なロジックを簡潔かつ正確に記述するための強力なツールとなるでしょう。

構文(syntax)

1const startDateTime = Temporal.PlainDateTime.from('2023-01-01T09:00:00');
2const endDateTime = Temporal.PlainDateTime.from('2023-01-01T17:30:00');
3
4const duration = endDateTime.since(startDateTime);

引数(parameters)

other, options = {}

  • other: Temporal.PlainDateTime: 比較対象となる別の PlainDateTime オブジェクト
  • options: object = { largestUnit: 'auto', smallestUnit: 'auto', step: 1 }: 期間の計算方法を制御するオプションオブジェクト

戻り値(return)

Temporal.Duration

二つの Temporal.PlainDateTime オブジェクト間の差を表す Temporal.Duration オブジェクトを返します。

関連コンテンツ

関連プログラミング言語