判斷是否為今年
- 取出日期的年份進行比較,如果一樣返回1,不一樣就返回0。
- (BOOL) isThisYear{
NSCalendar *calendar = [NSCalendar currentCalendar];
NSInteger *nowYear = (NSInteger *)[calendar component:NSCalendarUnitYear fromDate:[NSDate date]];
NSInteger *selfYear = (NSInteger *)[calendar component:NSCalendarUnitYear fromDate:self];
return nowYear == selfYear;
}
判斷是否為今天
- 取出當前日期和要比較日期的年月日,并將它們的類型從Date類型轉成NSString類型,然后判斷2者是否相等,相等返回1,不相等返回0。
- (BOOL) isToday{
NSDateFormatter *fmt = [[NSDateFormatter alloc]init];
fmt.dateFormat = @"yyyy-mm-dd";
NSString *nowDay = [fmt stringFromDate:[NSDate date]];
NSString *selfDay = [fmt stringFromDate:self];
return [nowDay isEqualToString:selfDay];
}
判斷是否為昨天
- 取出當前日期和要比較日期的年月日,并將它們的類型從Date類型轉成NSString類型,然后再將NSString類型轉回Data類型,然后用[calendar components:NSCalendarUnitDay fromDate:selfDate toDate:nowDate options:0]來比較要比較的日期和當前日期相差多少天,如果components.year == 0 && components.month == 0 && components.day == 1;
則返回 1,否則返回0。
- (BOOL) isYesterday{
NSDateFormatter *fmt = [[NSDateFormatter alloc]init];
fmt.dateFormat = @"yyyy-mm-dd";
NSDate *nowDate = [fmt dateFromString:[fmt stringFromDate:[NSDate date]]];
NSDate *selfDate = [fmt dateFromString:[fmt stringFromDate:self]];
NSCalendar *calendar = [NSCalendar currentCalendar];
NSDateComponents *components = [calendar components:NSCalendarUnitDay fromDate:selfDate toDate:nowDate options:0];
return components.year == 0
&& components.month == 0
&& components.day == 1;
}