캘린더 선택시 몇번째 주인지 알수있나요?
본문
jquery datepicker 캘린더를 통해 날짜를 선택하면 해당 월의 몇번째 주인지 알 수 있는 방법이 있는지 궁금합니다.
게시판을 이용하여 일일 체크리스트를 만드는데 데이터각 글쓰기처럼 각각 입력되고 있으며,
주단위값을 기준으로 grouping 해서 월~일 데이터를 주단위로 보여주려고 합니다.
datepicker를 통해 선택한 날짜가 해당 달의 몇번째 주에 속하는지 알 수 있는 방법 또는 추천안이 있으시면 안내를 부탁드립니다.
감사합니다.
답변 1
<script>
function getWeekOfMonth(date) {
// date는 Date 객체여야 합니다.
const firstDay = new Date(date.getFullYear(), date.getMonth(), 1);
const dayOfWeek = firstDay.getDay(); // 첫날의 요일 (0: 일요일, 1: 월요일, ...)
const offsetDate = date.getDate() + dayOfWeek - 1;
return Math.floor(offsetDate / 7) + 1;
}
// 예시:
const selectedDate = new Date('2025-07-21');
const week = getWeekOfMonth(selectedDate);
console.log(`${selectedDate.toLocaleDateString()}는 ${week}번째 주입니다.`);
</script>
답변을 작성하시기 전에 로그인 해주세요.