文法

日付まわりの処理 DateComponents

2016年11月3日追記
NSDateComponentsもSwift3になってからNSという接頭辞がなくなってDateComponentsになりました。

さて、こうして扱う暦を指定したら、DateComponentsで各情報を取り出すことができます。

とりあえず簡略化して書くと

cal_comp = cal.components( … , from:now)

となります。右辺のcalはNSCalendarで指定したグレゴリオ暦のフォーマット、nowはDateで得られた一意の時間情報なので、この式はcal_comp(というDateComponents型の定数)にnowから生成された時間情報のうち、指定の情報(components)を代入しなさいということになります。

で、肝心のcomponents。AppleのReferenceによると、次のようなものが取り出せることになっている。

  • era
  • year
  • month
  • day
  • hour
  • minute
  • second
  • nanosecond
  • weekday
  • weekdayOrdinal
  • quarter
  • weekOfMonth
  • weekOfYear
  • yearForWeekOfYear
  • leapMonth

今回は年月日と曜日の4情報のみを取り出してcal_compに代入しました。