Instance Method


Returns, for a given absolute time, the ordinal number of a smaller calendar unit (such as a day) within a specified larger calendar unit (such as a week).


- (NSUInteger)ordinalityOfUnit:(NSCalendarUnit)smaller inUnit:(NSCalendarUnit)larger forDate:(NSDate *)date;



The smaller calendar unit


The larger calendar unit


The absolute time for which the calculation is performed

Return Value

The ordinal number of smaller within larger at the time specified by date. Returns NSNotFound if larger is not logically bigger than smaller in the calendar, or the given combination of units does not make sense (or is a computation which is undefined).


The ordinality is in most cases not the same as the decomposed value of the unit. Typically return values are 1 and greater. For example, the time 00:45 is in the first hour of the day, and for units Hour and Day respectively, the result would be 1. An exception is the week-in-month calculation, which returns 0 for days before the first week in the month containing the date.

Note that some computations can take a relatively long time.

See Also

Getting Calendar Information


An identifier for the calendar.


The index of the first weekday of the receiver.


The locale of the receiver.


The time zone for the calendar.

- maximumRangeOfUnit:

Returns the maximum range limits of the values that a given unit can take on.

- minimumRangeOfUnit:

Returns the minimum range limits of the values that a given unit can take on.


The minimum number of days in the first week of the receiver.

- rangeOfUnit:inUnit:forDate:

Returns the range of absolute time values that a smaller calendar unit (such as a day) can take on in a larger calendar unit (such as a month) that includes a specified absolute time.

- rangeOfUnit:startDate:interval:forDate:

Returns by reference the starting time and duration of a given calendar unit that contains a given date.

- rangeOfWeekendStartDate:interval:containingDate:

Returns whether a given date falls within a weekend period, and if so, returns by reference the start date and time interval of the weekend range.


Calendrical units such as year, month, day and hour.