코드숨 과정을 통해 Guard Clauses에 대해 알게 되었다.
이는 조건문에 관한 것이다.
if-else 로직을 리팩토링하여 좀 더 읽기 쉽고 깔끔한 코드를 작성하는데 그 의의가 있다.
function checkMaster(user) {
if (user.role === 'admin') {
if (user.master === true) {
return true;
}
else {
return false;
}
}
else {
return false;
}
}
if-else 로직으로 작성하는 것은 편리하다. 하지만 가독성이 좋지 않다는 단점이 있다. 중첩이 깊어질 수록 내용을 명확하게 파악하기 힘들고 이는 유지보수에 도움이 되지 않는다.
Guard Clauses에 의한 작성법은 과감하게 if-else 로직을 사용하지 않는 것이다. 전제가 되는 조건을 if문으로 간결하게 작성하고 조건에 부합하지 않으면 false 리턴한다.
function checkMaster(user) {
if (user.role !== 'admin') return false
if (user.master !== true) return false
return true
}
두 코드 중에 어떤 코드가 더 보기 좋은지에 대해서는 굳이 재고할 필요가 없어 보인다. 덕분에 예외처리를 쉽게 할 수 있다.
'Javascript' 카테고리의 다른 글
코어 자바스크립트 - 실행 컨텍스트 (0) | 2021.11.08 |
---|---|
코어 자바스크립트 - 데이터 타입 (0) | 2021.11.04 |
이벤트 핸들러를 어떻게 할당해줘야 할까? (0) | 2021.09.12 |
스프레드 연산자의 장점_1 (0) | 2021.08.20 |
const 를 써야 하는 이유 (0) | 2021.08.20 |