[ JS ] Early Return

김문주·2025년 4월 2일

JavaScript

목록 보기
2/5
post-thumbnail

Early Return란?

우선, 중첩된 조건문을 사용하는 코드를 확인해 봅시다.

function compare(num) {
  if (num === 0) {
    console.log("num의 값이 0입니다.");
  } else if (num < 0) {
    console.log("num의 값이 0보다 작습니다.");
  } else {
    if (num >= 10) {
      console.log("num의 값이 10보다 크거나 같습니다.");
    } else {
      console.log("num의 값이 0보다 크고 10보다 작습니다.");
    }
  }
} 

위 코드는 if-else 문이 중첩되어 있어 가독성이 떨어집니다. 이를 Early Return 패턴을 적용해 개선할 수 있습니다.

function compare(num) {
  if (num === 0) {
    return "num의 값이 0입니다.";
  }
  if (num < 0) {
    return "num의 값이 0보다 작습니다.";
  }
  if (num >= 0) {
    return "num의 값이 10보다 크거나 같습니다.";
  }
  return "num의 값이 0보다 크고 10보다 작습니다.";
}

✔ Early Return을 사용하는 이유

위 코드처럼 조건을 만족하면 즉시 return하여 불필요한 else를 없앨 수 있습니다.

이를 통해 중첩된 조건문을 줄이고, 가독성을 높이며, 코드의 흐름을 단순화할 수 있습니다.

우테코 프리코스에서는 else를 사용하지 않는 것을 요구사항으로 명시하기도 하는데,

그 이유는 불필요한 중첩을 방지하여 코드를 읽기 쉽게 하기 위함입니다.

하지만 무조건 Early Return을 적용하는 것이 항상 좋은가?에 대해서는 고민이 필요합니다.

✅ Early Return의 장점

  • 중첩 조건문을 줄여 코드의 가독성을 높이고 읽기 쉽게 만든다.
  • 조건이 추가될 때 깊은 중첩을 방지할 수 있다.
  • 빠르게 특정 조건을 검사하고 함수 실행을 종료할 수 있다.

❌ Early Return의 단점

  • 함수 내에 여러 개의 return이 존재하면 흐름을 추적하기 어려울 수 있다.
  • 코드가 지나치게 여러 곳에서 return하면 유지보수가 어려워질 가능성이 있다.
  • 특정 상황에서는 if-else보다 흐름을 이해하기 어려울 수 있다.

결론

Early return 패턴은 적절히 활용하면 가독성과 유지보수성을 높일 수 있는 강력한 패턴이지만,

너무 남용하면 오히려 코드 흐름을 이해하기 어렵게 만들 수도 있습니다.

따라서 상황에 맞게 사용하는 것이 중요합니다!

profile
안녕하세요:)

0개의 댓글