Skip to main content
Home
This release is 12 versions behind 0.225.6 — the latest version of @std/datetime. Jump to latest

@std/datetime@0.224.0
Built and signed on GitHub Actions

UNSTABLE: Utilities for dealing with Date objects

This package works with Cloudflare Workers, Node.js, Deno, Bun, Browsers
This package works with Cloudflare Workers
This package works with Node.js
This package works with Deno
This package works with Bun
This package works with Browsers
JSR Score
100%
Published
2 years ago (0.224.0)

Utilities for dealing with Date objects.

Constants

Constants such as SECOND, MINUTE and HOUR can be found in the constants module.

Day of year

dayOfYear returns the number of the day in the year in the local timezone. dayOfYearUtc does the same but in UTC time.

import { dayOfYear } from "@std/datetime/day-of-year";

dayOfYear(new Date("2019-03-11T03:24:00")); // 70

Difference between dates

difference calculates the difference of the 2 given dates in various units.

import { difference } from "@std/datetime/difference";

const date0 = new Date("2018-05-14");
const date1 = new Date("2020-05-13");

difference(date0, date1);
// {
//   milliseconds: 63072000000,
//   seconds: 63072000,
//   minutes: 1051200,
//   hours: 17520,
//   days: 730,
//   weeks: 104,
//   months: 23,
//   quarters: 7,
//   years: 1
// }

Formatting date strings

format formats a date to a string with the specified format.

import { format } from "@std/datetime/format";

const date = new Date(2019, 0, 20, 16, 34, 23, 123);

format(date, "dd-MM-yyyy"); // "20-01-2019"

format(date, "MM-dd-yyyy HH:mm:ss.SSS"); // "01-20-2019 16:34:23.123"

format(date, "'today:' yyyy-MM-dd"); // "today: 2019-01-20"

Detecting leap years

isLeap returns whether the given year is a leap year. isUtcLeap does the same but in UTC time.

import { isLeap } from "@std/datetime/is-leap";

isLeap(new Date("1970-01-02")); // false

isLeap(1970); // false

isLeap(new Date("1972-01-02")); // true

isLeap(1972); // true

Parsing date strings

parse parses a date string using the specified format string.

import { parse } from "@std/datetime/parse";

parse("20-01-2019", "dd-MM-yyyy"); // 2019-01-19T13:00:00.000Z

parse("01-20-2019 04:34 PM", "MM-dd-yyyy hh:mm a"); // 2019-01-20T05:34:00.000Z

parse("01-20-2019 16:34:23.123", "MM-dd-yyyy HH:mm:ss.SSS"); // 2019-01-20T05:34:23.123Z

Week of year

weekOfYear returns the number of the week in the year in the local timezone.

import { weekOfYear } from "@std/datetime/week-of-year";

weekOfYear(new Date("2020-12-28T03:24:00")); // 53

weekOfYear(new Date("2020-07-10T03:24:00")); // 28
Built and signed on
GitHub Actions

New Ticket: Report package

Please provide a reason for reporting this package. We will review your report and take appropriate action.

Please review the JSR usage policy before submitting a report.

Add Package

deno add jsr:@std/datetime

Import symbol

import * as datetime from "@std/datetime";
or

Import directly with a jsr specifier

import * as datetime from "jsr:@std/datetime";

Add Package

pnpm i jsr:@std/datetime
or (using pnpm 10.8 or older)
pnpm dlx jsr add @std/datetime

Import symbol

import * as datetime from "@std/datetime";

Add Package

yarn add jsr:@std/datetime
or (using Yarn 4.8 or older)
yarn dlx jsr add @std/datetime

Import symbol

import * as datetime from "@std/datetime";

Add Package

vlt install jsr:@std/datetime

Import symbol

import * as datetime from "@std/datetime";

Add Package

npx jsr add @std/datetime

Import symbol

import * as datetime from "@std/datetime";

Add Package

bunx jsr add @std/datetime

Import symbol

import * as datetime from "@std/datetime";