소개
이 랩에서는 JavaScript 를 사용하여 주어진 날짜가 해당하는 연도의 0-인덱스 주차를 계산하는 방법을 살펴봅니다. Date 생성자와 여러 Date.prototype 메서드를 사용하여 해당 연도의 첫 번째 월요일을 구하고, 첫 번째 월요일과 주어진 날짜 사이의 주 수를 계산합니다. 이 랩은 JavaScript 날짜 조작 및 계산에 대한 이해를 높이기 위해 설계되었습니다.
이 랩에서는 JavaScript 를 사용하여 주어진 날짜가 해당하는 연도의 0-인덱스 주차를 계산하는 방법을 살펴봅니다. Date 생성자와 여러 Date.prototype 메서드를 사용하여 해당 연도의 첫 번째 월요일을 구하고, 첫 번째 월요일과 주어진 날짜 사이의 주 수를 계산합니다. 이 랩은 JavaScript 날짜 조작 및 계산에 대한 이해를 높이기 위해 설계되었습니다.
JavaScript 에서 날짜에 해당하는 0-인덱스 연도 주차를 구하려면 다음 단계를 따르세요.
date 매개변수를 받는 weekOfYear 함수를 생성합니다.Date 생성자와 Date.prototype.getFullYear()을 사용하여 해당 연도의 첫 번째 날을 Date 객체로 가져옵니다.Date.prototype.setDate(), Date.prototype.getDate() 및 Date.prototype.getDay()을 모듈로 연산자 (%) 와 함께 사용하여 해당 연도의 첫 번째 월요일을 구합니다.date에서 해당 연도의 첫 번째 월요일을 빼고, 주당 밀리초 수로 나눕니다.Math.round()를 사용하여 주어진 date에 해당하는 0-인덱스 연도 주차를 구합니다.date가 해당 연도의 첫 번째 월요일보다 이전인 경우, -0이 반환됩니다.다음은 코드입니다.
const weekOfYear = (date) => {
const startOfYear = new Date(date.getFullYear(), 0, 1);
startOfYear.setDate(startOfYear.getDate() + (startOfYear.getDay() % 7));
return Math.round((date - startOfYear) / (7 * 24 * 3600 * 1000));
};
weekOfYear 함수를 사용하려면, Date 객체를 매개변수로 사용하여 호출하면 됩니다.
weekOfYear(new Date("2021-06-18")); // 23
이렇게 하면 주어진 날짜에 해당하는 0-인덱스 연도 주차가 반환되며, 이 경우 23입니다.
축하합니다! 연도 주차 랩을 완료했습니다. LabEx 에서 더 많은 랩을 연습하여 기술을 향상시킬 수 있습니다.