【Ruby3.x】Date::commercial()メソッドの使い方
commercialメソッドの使い方について、初心者にもわかりやすく解説します。
作成日: 更新日:
基本的な使い方
commercialメソッドは、RubyのDateクラスに属するインスタンスメソッドです。このメソッドは、自身が表す日付オブジェクト(レシーバー)を基準として、特定の週の曜日や商業週の番号に基づいて新しいDateオブジェクトを生成し、返します。
具体的には、commercialメソッドはオプションで二つの引数を取ります。一つ目の引数であるwdayは、取得したい日付の曜日を指定します。このwdayは、国際標準化機構(ISO)が定めるISO 8601規格に準拠しており、1が月曜日、2が火曜日、…、7が日曜日を表します。この引数を省略した場合、デフォルトで月曜日(1)が選択されます。二つ目の引数であるcweekは、その年の何番目の商業週に属する日付を取得するかを指定する週番号です。このcweekを省略した場合、レシーバーの日付が属する商業週の週番号が使用されます。
このメソッドを利用することで、例えば、ある日付が含まれる週の正確な月曜日を特定したり、特定の商業週の任意の日付(例えば、その週の金曜日)を簡単に計算して取得したりすることが可能です。システム開発において、週単位でのレポート作成や集計処理、あるいは国際的なビジネス要件に基づいた日付計算を行う際に非常に有用です。最終的に、指定された条件に合致する新しいDateオブジェクトが生成されて返されます。
構文(syntax)
1Date.commercial(2023, 1, 1)
引数(parameters)
cwyear, cweek = 1, cday = 1
- cwyear: ISO 8601 形式での週番号の年を指定する整数
- cweek = 1: ISO 8601 形式での週番号を指定する整数 (デフォルトは1)
- cday = 1: 週の何日目かを指定する整数 (デフォルトは1)
戻り値(return)
Date
与えられた日付オブジェクトを、グレゴリオ暦の週番号と週内の日番号に変換した新しいDateオブジェクトを返します。