- 조건이 다르지만 그 결과로 수행하는 동작이 같은 코드에 사용
- and 연산자와 or 연산자로 여러개의 비교 로직을 통합한다.
- 해당 조건식들 모두에 부수효과가 없는지 확인
- 조건문 두 개를 선택하여 두 조건문의 조건식들을 논리 연산자로 결합
- 테스트
- 2~3 반복
- 합친 조건식을 함수로 추출할지 고려
예시
조건이 다양하고 결과가 같은 식들
if (anEmployee.seniority < 2) return 0;
if (anEmployee.monthsDisabled > 12) return 0;
if (anEmployee.isPartTime) return 0;
1~4 번 적용후
if (
anEmployee.seniority < 2 ||
anEmployee.monthsDisabled > 12 ||
anEmployee.isPartTime
)
return 0;
5번까지 적용
const isNotEligibleForDisability = () => {
return (
anEmployee.seniority < 2 ||
anEmployee.monthsDisabled > 12 ||
anEmployee.isPartTime
);
};
if (isNotEligibleForDisability()) return 0;