The setDate() method sets the day of the Date object relative to the beginning of the currently set month.




An integer representing the day of the month.

Return value

The value returned by setDate() is the number of milliseconds since 1 January 1970 00:00:00 UTC of the resulting date (the Date object is also changed in place).


If the dayValue 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 dayValue, the date will be set to the last day of the previous month.


Using setDate()

var theBigDay = new Date(1962, 6, 7); // 1962-07-07
theBigDay.setDate(24);  // 1962-07-24
theBigDay.setDate(32);  // 1962-08-01
theBigDay.setDate(22);  // 1962-08-22


Specification Status Comment
ECMAScript 1st Edition (ECMA-262) Standard Initial definition. Implemented in JavaScript 1.0.
ECMAScript 5.1 (ECMA-262)
The definition of 'Date.prototype.setDate' in that specification.
ECMAScript 2015 (6th Edition, ECMA-262)
The definition of 'Date.prototype.setDate' in that specification.

Browser compatibility

Feature Chrome Firefox (Gecko) Internet Explorer Opera Safari
Basic support (Yes) (Yes) (Yes) (Yes) (Yes)
Feature Android Chrome for Android Firefox Mobile (Gecko) IE Mobile Opera Mobile Safari Mobile
Basic support (Yes) (Yes) (Yes) (Yes) (Yes) (Yes)

See also

Document Tags and Contributors

 Contributors to this page: fscholz, sinelaw, Rklasens, Mingun, Robg1, Sheppy, ethertank, evilpie, Neil, Ptak82, Maian, Dria
 Last updated by: fscholz,
Hide Sidebar