ee.Date.getRelative

Returns the specified (0-based) unit of this date relative to a larger unit, e.g. getRelative('day', 'year') returns a value between 0 and 365.
UsageReturns
Date.getRelative(unit, inUnit, timeZone)Long
ArgumentTypeDetails
this: dateDate
unitStringOne of 'month' 'week', 'day', 'hour', 'minute', or 'second'.
inUnitStringOne of 'year', 'month' 'week', 'day', 'hour', or 'minute'.
timeZoneString, default: nullThe time zone (e.g. 'America/Los_Angeles'); defaults to UTC.

Examples

Code Editor (JavaScript)

var date = ee.Date('2021-4-30T07:15:31.24');

print('0-based month of year', date.getRelative('year', 'year'));
print('0-based week of year', date.getRelative('week', 'year'));
print('0-based day of year', date.getRelative('day', 'year'));
print('0-based day of month', date.getRelative('day', 'month'));
print('0-based minute of day', date.getRelative('minute', 'day'));
print('0-based second of minute', date.getRelative('second', 'minute'));

// 0 is returned when unit argument is larger than inUnit argument.
print('0-based year of month (bad form)', date.getRelative('year', 'month'));