isEitherEvenAndLessThan9 함수를 작성하세요.
아래와 같이 풀면, 외부 if 문의 return 값이 존재하지 않아
내부 if 문이 false가 될 경우(둘 중 하나가 9보다 크거나, 둘 다 홀수일 경우)
undefined가 반환 된다.
function isEitherEvenAndLessThan9(num1, num2) {
if (typeof num1 === 'number' && typeof num2 === 'number') {
if ((num1 % 2 === 0 || num2 % 2 === 0) && (num1 < 9 && num2 < 9)) {
return true;
}
}
else return false;
}
let output = isEitherEvenAndLessThan9(2, 34);
console.log(output); // undefined 출력
따라서 아래와 같이 외부 if 문에 대해서도 return 값을 true로 주면 해결!
function isEitherEvenAndLessThan9(num1, num2) {
if (typeof num1 === 'number' && typeof num2 === 'number') {
if ((num1 % 2 === 0 || num2 % 2 === 0) && (num1 < 9 && num2 < 9)) {
return true;
}
return false;
}
else return false;
}
(MDN) typeof - JavaScript
(MDN) if...else - JavaScript
(w3schools) JavaScript if else else if