getHoursInZonedDay
Signature
Section titled “Signature”getHoursInZonedDay(value: string): numberimport { getHoursInZonedDay } from "@northguild/gmt/zoned/calculate";Return the number of hours in the calendar day a zoned datetime falls on.
- Accounts for DST transitions: a spring-forward day is 23 hours, a fall-back day is 25 hours, and a normal day is 24 hours. Zones whose DST shift isn’t a whole hour (e.g.
Australia/Lord_Howe’s 30-minute shift) return a fractional value instead, such as 23.5 or 24.5. - The calculation is based on the local calendar day of the input, not the UTC instant.
- Returns null for invalid input.
Parameters
Section titled “Parameters”| Parameter | Type | Description |
|---|---|---|
value |
string |
zoned ISO 8601 datetime string |
Returns
Section titled “Returns”number of hours in the day (usually 23, 24, or 25; fractional for non-whole-hour DST shifts), or null on invalid input
Examples
Section titled “Examples”getHoursInZonedDay("2024-03-10T12:00:00-04:00[America/New_York]") // 23getHoursInZonedDay("2024-11-03T12:00:00-05:00[America/New_York]") // 25getHoursInZonedDay("2024-02-29T12:00:00+00:00[UTC]") // 24getHoursInZonedDay("2024-10-06T12:00:00+11:00[Australia/Lord_Howe]") // 23.5getHoursInZonedDay("invalid") // null