startOf
Returns a new Date set to the start of the given unit.
'day'— 00:00:00.000'month'— 1st of the month, 00:00:00.000'year'— January 1st, 00:00:00.000
Returns null if the input is invalid.
Available since v2.0.0
Import
Section titled “Import”Signature
Section titled “Signature”Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
date | DateLike | The base date |
unit | DateTruncUnit | The unit to truncate to |
Returns
Section titled “Returns”Date | null — A new Date at the start of the unit, or null
Examples
Section titled “Examples”startOf
Section titled “startOf”Related Types
Section titled “Related Types”DateLike
Section titled “DateLike”A value that can be converted to a Date.
Date— used as-is (validated for Invalid Date)number— treated as a timestamp (seconds or milliseconds, auto-detected);0is treated as invalid and producesnullin ensureDatestring— parsed vianew Date(string)EpochMilliseconds— any object with aepochMillisecondsproperty (e.g.Temporal.Instant,Temporal.ZonedDateTime)
// TODO: When the Temporal API reaches Stage 4 and is available without // flags in all major runtimes, consider narrowing the union to the // concrete Temporal types for stricter type-checking.
DateTruncUnit
Section titled “DateTruncUnit”Units supported by startOf and endOf.
EpochMilliseconds
Section titled “EpochMilliseconds”An object that exposes an epoch timestamp in milliseconds.
This structural type is satisfied by Temporal.Instant and
Temporal.ZonedDateTime (and any future object that carries the same
property), so callers can pass Temporal values without importing them.
