
getDate() 메서드는 Date 객체의 일(day) 값을 반환합니다. 하지만 이 메서드는 1일부터 31일까지의 값을 반환하는데, 30일과 31일의 경우는 그대로 반환되지만 29일의 경우는 2월 29일이 아닌 2월 28일을 반환하는 이유는 다음과 같습니다.
- getDate() 메서드는 일(day) 값을 반환하기 때문에, 2월 29일을 반환하기 위해서는 2월 28일 이후 1일을 더해야 합니다.
- Date 객체의 setDate() 메서드를 사용하여 일(day) 값을 직접 설정할 수 있습니다.
2월 29일을 반환하기 위해서는 다음과 같이 사용할 수 있습니다.
#hostingforum.kr
javascript
const date = new Date(2024, 1, 29); // 2024년 2월 29일
console.log(date.getDate()); // 29
const date2 = new Date(2024, 1, 28); // 2024년 2월 28일
date2.setDate(date2.getDate() + 1); // 일(day) 값 1을 더합니다.
console.log(date2.getDate()); // 29
또한, moment.js 라이브러리를 사용하여 2월 29일을 반환할 수 있습니다.
#hostingforum.kr
javascript
const moment = require('moment');
const date = moment('2024-02-29');
console.log(date.date()); // 29
위의 예제에서 moment.js 라이브러리를 사용하여 2월 29일을 반환하는 것을 볼 수 있습니다.
2025-07-30 17:10