7주차: 10장 조건부 로직 간소화 #16
Replies: 5 comments 5 replies
-
질문 1중첩된 조건문은 어떻게 리팩토링할 수 있을까요? function checkAccess(user) {
if (user) {
if (user.isAdmin) {
return "Access granted";
}
}
return "Access denied";
} 위 코드를 리팩토링 해주세요!
|
Beta Was this translation helpful? Give feedback.
-
질문 4조건부 로직의 대부분은 순수하게 의견을 묻습니다..다형성을 이용한 리팩토링은 언제즈음 진행하는게 좋을까요?
|
Beta Was this translation helpful? Give feedback.
-
질문 5Q1. 여기 리팩터링 전 코드가 있습니다. 10장에 나온 기법을 활용하여 리팩터링을 해주세요! (code made by gpt) class Customer {
constructor(name, isVerified) {
this.name = name;
this.isVerified = isVerified;
}
getDiscount() {
if (this.isVerified) {
return 0.1; // 10% 할인
} else {
return 0; // 할인 없음
}
}
} |
Beta Was this translation helpful? Give feedback.
-
3번 질문 Q. 아래 함수에는 이름에 'And'가 들어 있어 함수가 하는 일이 모호합니다. 어떻게 리팩터링할 수 있을까요? (382쪽 - 10.4) function checkNameAndAgeAndAddress(user) {
if (user.name.length >= 2 && user.name.length <= 10) {
if (user.age >= 14 && user.age <= 120) {
if (user.address && user.address.trim().length > 0) {
return true;
}
}
}
return false;
} |
Beta Was this translation helpful? Give feedback.
-
질문 4아래 코드는 switch (bird.type) {
case '유럽 제비':
return '보통이다';
case '아프리카 제비':
return (bird.numberOfCoconuts > 2) ? '지쳤다' : '보통이다';
case '노르웨이 파랑 앵무':
return (bird.voltage > 100) ? '그을렸다' : '예쁘다';
default:
return '알 수 없다';
} |
Beta Was this translation helpful? Give feedback.
-
Beta Was this translation helpful? Give feedback.
All reactions