-
[#혼공챌린지] 혼자 공부하는 자바스크립트 4주차 미션자바스크립트/혼공챌린지 2021. 8. 1. 19:36
공부내용 정리
기본 미션
202쪽의 <윤년을 확인하는 함수 만들기> 예제를 실행하여 2021년이 윤년인지 확인하는 결과 인증샷
윤년의 특징:
- 4로 나누어 떨어지는 해는 윤년이다.
- 하지만 100으로 나누어 떨어지는 해는 윤년이 아니다.
- 하지만 400으로 나누어 떨어지는 해는 윤년이다.
이러한 윤년의 특징을
isLeapYear()
라는 함수로 구현한다. 숫자인 년도를 매개변수로 입력했을 때 윤년이면true
, 윤년이 아니면false
를 리턴한다.true
,false
를 리턴하는 함수는 보통isOO()
라는 이름으로 만든다.
내가 짠 식
const isLeapYear = (year) => { if (year % 4 === 0 && (year % 100 !== 0 || year % 400 === 0)) { return true; } else { return false; } }
true
가 리턴되는 조건은 두 가지이다:- 4로 나누어 떨어지면서 100으로 나누어 떨어지지 않을 때.
-
year % 4 === 0 && year % 100 !== 0
-
- 4로 나누어 떨어지면서 400으로도 나누어 떨어질 때.
-
year % 4 === 0 && year % 400 === 0
-
두 가지 조건이 하나만 만족해도 윤년이므로,
||
로 연결했다.정답
function isLeapYear(year) { return (year % 4 === 0) && (year % 100 !== 0) || (year % 400 === 0) }
조건은 동일하지만,
if else
문을 사용하지 않고 간단하게 구현하였다.실행 결과
둘 다 잘 작동하여
false
값을 리턴하였다. 추가로 기본 미션은 2021년이 윤년인지를 확인하라고 했지만 심심해서new Date().getFullYear()
메소드를 활용해 코드를 확인하는 해가 윤년인지를 확인할 수 있게끔 코드를 작성했다.선택미션
p.240 확인 문제 1번 풀고 인증샷
filter 함수의 콜백 함수 부분을 채워서 ① 홀수만 추출, ② 100 이하의 수만 추출, ③ 5로 나눈 나머지가 0인 수만 추출해주세요. 그리고 코드의 실행 결과를 적어보세요.
내가 짠 식
let numbers = [273, 25, 75, 52, 103, 32, 57, 24, 76]; // 홀수만 추출 numbers = numbers.filter((value) => value % 2 === 1); console.log("홀수만 추출:", numbers); // 100 이하의 수만 추출 numbers = numbers.filter((value) => value <= 100); console.log("100 이하의 수만 추출:", numbers); // 5로 나눈 나머지가 0인 수만 추출 numbers = numbers.filter((value) => value % 5 === 0); console.log("5로 나눈 나머지가 0인 수만 추출", numbers);
정답
정답의 식은 동일하지만
filter
의 인자를value
가 아닌x
로 썼다는 점이 달랐다.실행 결과
'자바스크립트 > 혼공챌린지' 카테고리의 다른 글
[#혼공챌린지] 혼자 공부하는 자바스크립트 5주차 미션 (0) 2021.08.08 [#혼공챌린지] 혼자 공부하는 자바스크립트 3주차 미션 (0) 2021.07.25 [#혼공챌린지] 혼자 공부하는 자바스크립트 2주차 미션 (0) 2021.07.19 [#혼공챌린지] 혼자 공부하는 자바스크립트 1주차 미션 (0) 2021.07.10