如何比较NSDate以检查日期是否在同一周内

Ale*_*ole 0 nsdate swift

我有两个NSDates.如何比较它们以确定日期是否在同一周内.

我有一个系统,目前检查两个日期是否在同一天内,并且代码如下:

if calan.compareDate(datee, toDate: now, toUnitGranularity: .CalendarUnitDay) == .OrderedSame {
    transactionsToday.addObject(transaction)
}else{
    println("No transactions today")
}
Run Code Online (Sandbox Code Playgroud)

我将使用哪个UnitGranularity来检查两个日期是否共享同一周?

mil*_*526 11

if calan.compareDate(datee, toDate: now, toUnitGranularity: .CalendarUnitWeekOfYear) == .OrderedSame {
    transactionsToday.addObject(transaction)
}else{
    println(“No transactions this week")
}
Run Code Online (Sandbox Code Playgroud)

你现在使用的方式也一样.CalendarUnitDay你也可以使用.CalendarUnitWeekOfYear

编辑:
如果你想检查日期是否在一周内,而不是在同一周,你可以得到last-和nextWeekDate

let lastWeekDate = NSCalendar.currentCalendar().dateByAddingUnit(.CalendarUnitWeekOfYear, value: -1, toDate: NSDate(), options: nil)!
Run Code Online (Sandbox Code Playgroud)

当然下周会

let nextWeekDate = NSCalendar.currentCalendar().dateByAddingUnit(.CalendarUnitWeekOfYear, value: 1, toDate: NSDate(), options: nil)!
Run Code Online (Sandbox Code Playgroud)

然后,您可以查看当前日期是否在这两个日期之间