Time API
Named exports for date/time helpers: format, getTimestamp, plus UTC/timezone/relative/time ranges.
When to use
- Display time:
format(seconds)→YYYY-MM-DD HH:mm:ss - API fields:
nowSeconds()/getUnixTimestamp()→ align with backend Unix seconds - Countdown:
formatDuration(ms)→HH:mm:ssorXd HH:mm:ss - Relative time:
relativeTime(from,to)→2m ago / in 1h - Day range:
startOfDay/endOfDayin local timezone - Date shift:
addDays(seconds,n)forward/backwards
Import
ts
import { format, getTimestamp, nowSeconds, formatUTC, getTimezone, relativeTime, formatDuration, addDays, startOfDay, endOfDay, setTimeOfDay, nextAt } from 'nex-lib'Examples
ts
format() // 当前格式化
getTimestamp(0) // 1970-01-01 毫秒
relativeTime(nowSeconds()-120, nowSeconds())
formatDuration(3700000)
const target = nextAt(3, 18) // 三天后的 18:00(本地时区)
setTimeOfDay(startOfDay(nowSeconds()), 9, 30) // 今天 09:30:00format(seconds?: number): string
Formats time to YYYY-MM-DD HH:mm:ss.
getTimestamp(seconds?: number): number
Returns milliseconds.
formatUTC(seconds?: number): string
Formats in UTC timezone.
getTimezone(): string
Returns IANA timezone, e.g. Asia/Shanghai.
nowMs(): number / nowSeconds(): number
Current time in ms / seconds.
getUnixTimestamp(seconds?: number): number
Unix seconds.
getTimezoneOffsetMinutes(): number
UTC offset minutes (e.g. -480).
getISO8601(seconds?: number): string
ISO 8601 string.
relativeTime(fromSeconds: number, toSeconds?: number): string
Relative time in English.
formatDuration(ms: number): string
Duration as HH:mm:ss or Xd HH:mm:ss.
addDays(seconds: number, n: number): number
Shift by n days.
startOfDay(seconds?: number): number / endOfDay(seconds?: number): number
Local day start/end seconds.
setTimeOfDay(seconds, h, m?, s?)
Set to a specific time of day (local timezone).
nextAt(offsetDays, h, m=0, s=0)
Target at given offset days and time (local timezone).