formatTimestamp

Table of Contents

Description

The formatTimestamp utility function formats timestamps using custom format tokens or locale-specific formatting.

Basic Usage

Import and use the formatTimestamp function to format dates:

import formatTimestamp from './utils/formatTimestamp.js';

const timestamp = Date.now();
const formatted = formatTimestamp(timestamp, 'YYYY-MM-DD');
console.log(formatted); // "2025-09-19"

Parameters

timestamp: number|string

The timestamp to format (milliseconds since epoch).

format: string (optional)

The format string using tokens. If not provided, uses locale-specific formatting.

forceLocale: string (optional)

The locale to use for formatting when no format is specified.

Format Tokens

YYYY

4-digit year (e.g., 2025)

YY

2-digit year (e.g., 25)

MM

2-digit month (01-12)

M

1-digit month (1-12)

DD

2-digit day (01-31)

D

1-digit day (1-31)

hh

2-digit hour (00-23)

h

1-digit hour (0-23)

mm

2-digit minute (00-59)

m

1-digit minute (0-59)

ss

2-digit second (00-59)

s

1-digit second (0-59)

iiii, iii, ii, i

Milliseconds with different padding

Examples

Date Formats

const timestamp = 1633024800000;

formatTimestamp(timestamp, 'YYYY-MM-DD'); // "2021-10-01"
formatTimestamp(timestamp, 'MM/DD/YYYY'); // "10/01/2021"
formatTimestamp(timestamp, 'DD-MM-YY'); // "01-10-21"

Time Formats

formatTimestamp(timestamp, 'hh:mm:ss');       // "00:00:00"
formatTimestamp(timestamp, 'h:mm'); // "0:00"
formatTimestamp(timestamp, 'hh:mm:ss.iii'); // "00:00:00.000"

Combined Formats

formatTimestamp(timestamp, 'YYYY-MM-DD hh:mm:ss'); 
// "2021-10-01 00:00:00"

formatTimestamp(timestamp, 'MM/DD/YY at h:mm');
// "10/01/21 at 0:00"

Locale Formatting

// Uses browser locale when no format specified
formatTimestamp(timestamp); // "10/1/2021, 12:00:00 AM"

// Force specific locale
formatTimestamp(timestamp, null, 'de-DE'); // German formatting