我期望扩展NSDate类,以便能够引用我们当前处于NSDate中的每周星期二。每周特定日期的NSDate扩展
我知道这可以用NSDateComponents完成。到目前为止,我有以下:
extension NSDate {
var tuesday: NSDate {
let calendar = NSCalendar.currentCalendar()
let todaysDate = NSDate()
let weekdayComponents = calendar.components(.CalendarUnitWeekday | .CalendarUnitWeekdayOrdinal, fromDate: todaysDate)
weekdayComponents.weekday = 3
let returnTuesday = calendar.dateByAddingComponents(weekdayComponents, toDate: todaysDate, options: nil)
return returnTuesday!
}}
我相信,一个基于索引的系统上CalendarUnitWeekday工作(即星期日= 1,星期六= 7),这就是为什么我在周二所需的工作日设置为3。
但是,当初始化一个NSDate对象并访问这个扩展的'tuesday'属性时,我提前一个月收到一个日期。
(今天的日期 - “2015年8月26日,16:42”) (周二日 - “2015年9月26日,16:42”)
是什么造成了一个月的这种进步?有没有办法通过扩展NSDate类来返回每周的特定日期?
感谢
正是我在找什么!谢谢你的明确分解。 –