더북(TheBook)

return 문 아랫부분은 무조건 operator일 때만 실행되므로 else 문으로 감쌀 필요가 없습니다.

const onClickNumber = (event) => { 
  if (!operator) {
    numOne += event.target.textContent;
    $result.value += event.target.textContent;
    return;
  }
  // 이하 코드는 operator에 값이 저장되어 있는 경우에만 실행됨
  if (!numTwo) {
    $result.value = '';
  }
  numTwo += event.target.textContent;
  $result.value += event.target.textContent;
};

이렇게 중첩 if 문이 사라졌습니다. else 문도 사라져서 읽기 어렵다고 생각할 수 있습니다. 하지만 익숙해지면 오히려 읽기 편합니다. 짧은 절차가 먼저 나온다고 생각하면 됩니다.

코드에서 몇 중첩을 허용할지에 대한 정답은 없습니다. 다만, 대부분 3중첩부터 코드가 읽기 어려워진다고 여기므로 3중첩까지는 가지 않기를 추천합니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.