Skip to main content
Very Popular
Latest
File
import toDate from '../toDate/index.ts'import requiredArgs from '../_lib/requiredArgs/index.ts'
/** * @name getDaysInMonth * @category Month Helpers * @summary Get the number of days in a month of the given date. * * @description * Get the number of days in a month of the given date. * * ### v2.0.0 breaking changes: * * - [Changes that are common for the whole library](https://github.com/date-fns/date-fns/blob/master/docs/upgradeGuide.md#Common-Changes). * * @param {Date|Number} date - the given date * @returns {Number} the number of days in a month * @throws {TypeError} 1 argument required * * @example * // How many days are in February 2000? * const result = getDaysInMonth(new Date(2000, 1)) * //=> 29 */export default function getDaysInMonth(dirtyDate: Date | number): number { requiredArgs(1, arguments)
const date = toDate(dirtyDate) const year = date.getFullYear() const monthIndex = date.getMonth() const lastDayOfMonth = new Date(0) lastDayOfMonth.setFullYear(year, monthIndex + 1, 0) lastDayOfMonth.setHours(0, 0, 0, 0) return lastDayOfMonth.getDate()}