我正在寻求扩展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对象并访问此扩展的“星期二”属性时,我将提前一个月收到日期 .
(今天日期 - “2015年8月26日下午4点42分”)(周二日期 - “2015年9月26日下午4:42”)
是什么导致了一个月的进步?有没有办法通过扩展NSDate类来返回我们每周的特定日期?
谢谢