콘텐츠로 이동

parseIsoInstant — @gj-kit/format

@gj-kit/format에서 공개하는 function입니다. package version 0.1.1의 release declaration을 그대로 표시합니다.

import { parseIsoInstant } from '@gj-kit/format';
/**
* Strict ISO 8601 → instant. Returns null for null/undefined/empty input and
* for anything outside the accepted grammar — parsing failure is a data error,
* never a throw.
*
* Accepted: `YYYY-MM-DD` | `YYYY-MM-DD(T| )HH:mm[:ss[.fff]][Z|±HH:MM|±HHMM]`,
* year 1–9999, calendar-valid components (no rollover: `'2026-02-30'` is null).
*
* Implemented with a regular expression and `Date.UTC` arithmetic — the engine's
* own string parser is never used, so the result does not vary between V8,
* JavaScriptCore and Hermes the way parsing a string with `Date` does.
*/
declare function parseIsoInstant(value: string | null | undefined, options: IsoParseOptions): Date | null;

이 선언은 매개변수, optionality, 제네릭, 반환값, 공개 union/type 계약의 정본입니다. 호출 전 필요한 환경·권한·오류 경계는 패키지 Golden path와 이 subpath의 import 조건을 함께 확인하세요.

  • 패키지: @gj-kit/format
  • 버전: 0.1.1
  • 공개 entry: .
  • 소스: GitHub

Strict ISO 8601 → instant. Returns null for null/undefined/empty input and for anything outside the accepted grammar — parsing failure is a data error, never a throw.

Accepted: YYYY-MM-DD | YYYY-MM-DD(T| )HH:mm[:ss[.fff]][Z|±HH:MM|±HHMM], year 1–9999, calendar-valid components (no rollover: '2026-02-30' is null).

Implemented with a regular expression and Date.UTC arithmetic — the engine’s own string parser is never used, so the result does not vary between V8, JavaScriptCore and Hermes the way parsing a string with Date does.