Date.prototype.getMonth()
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.
ThegetMonth() method ofDate instances returns the month for this date according to local time, as a zero-based value (where zero indicates the first month of the year).
In this article
Try it
const moonLanding = new Date("July 20, 69 00:20:18");console.log(moonLanding.getMonth()); // (January gives 0)// Expected output: 6Syntax
getMonth()Parameters
None.
Return value
An integer, between 0 and 11, representing the month for the given date according to local time: 0 for January, 1 for February, and so on. ReturnsNaN if the date isinvalid.
Description
The return value ofgetMonth() is zero-based, which is useful for indexing into arrays of months, for example:
const valentines = new Date("1995-02-14");const month = valentines.getMonth();const monthNames = ["January", "February", "March" /* , … */];console.log(monthNames[month]); // "February"However, for the purpose of internationalization, you should prefer usingIntl.DateTimeFormat with theoptions parameter instead.
const options = { month: "long" };console.log(new Intl.DateTimeFormat("en-US", options).format(valentines));// "February"console.log(new Intl.DateTimeFormat("de-DE", options).format(valentines));// "Februar"Examples
>Using getMonth()
Themonth variable has value11, based on the value of theDate objectxmas95.
const xmas95 = new Date("1995-12-25T23:15:30");const month = xmas95.getMonth();console.log(month); // 11Specifications
| Specification |
|---|
| ECMAScript® 2026 Language Specification> # sec-date.prototype.getmonth> |