Date.prototype.setUTCDate()

Baseline Widely available

This feature is well established and works across many devices and browser versions. It’s been available across browsers since July 2015.

The setUTCDate() method of Date instances changes the day of the month for this date according to universal time.

Try it

const event = new Date("August 19, 1975 23:15:30 GMT-3:00");

console.log(event.getUTCDate());
// Expected output: 20

event.setUTCDate(19);

console.log(event.getUTCDate());
// Expected output: 19

Syntax

js
setUTCDate(dateValue)

Parameters

dateValue

An integer from 1 to 31 representing the day of the month.

Return value

Changes the Date object in place, and returns its new timestamp. If dateValue is NaN (or other values that get coerced to NaN, such as undefined), the date is set to Invalid Date and NaN is returned.

Description

If the dateValue is outside of the range of date values for the month, setDate() will update the Date object accordingly.

For example, if 0 is provided for dateValue, the date will be set to the last day of the previous month. If you use 40 for dateValue, and the month stored in the Date object is June, the day will be changed to 10 and the month will be incremented to July.

If a negative number is provided for dateValue, the date will be set counting backwards from the last day of the previous month. -1 would result in the date being set to 1 day before the last day of the previous month.

Examples

Using setUTCDate()

js
const theBigDay = new Date();
theBigDay.setUTCDate(20);

Specifications

Specification
ECMAScript® 2025 Language Specification
# sec-date.prototype.setutcdate

Browser compatibility

Report problems with this compatibility data on GitHub
desktopmobileserver
Chrome
Edge
Firefox
Opera
Safari
Chrome Android
Firefox for Android
Opera Android
Safari on iOS
Samsung Internet
WebView Android
WebView on iOS
Deno
Node.js
setUTCDate

Legend

Tip: you can click/tap on a cell for more information.

Full support
Full support

See also