JavaScript

return

lshjju 2026. 2. 14. 16:58

함수의 최종 결과물을 전달하는 **return(반환)**에 대해 알아보겠습니다.

함수가 특정 작업을 수행한 뒤, 그 결과를 함수 밖으로 꺼내어 다시 사용할 수 있게 해주는 아주 중요한 문법입니다.


1. return의 개념 (자판기 비유)

함수를 하나의 자판기라고 생각하면 이해하기 쉽습니다.

  • 입력(Argument): 동전과 메뉴 선택 (함수로 전달하는 값)
  • 함수 내부 로직: 기계 안에서 음료수를 컵에 담는 과정
  • 반환(return): 배출구로 나온 음료수

자판기 안에서 아무리 맛있는 음료를 만들어도, 배출구(return)를 통해 밖으로 내보내 주지 않으면 우리는 그 음료를 마실 수 없습니다.


2. return의 두 가지 주요 역할

① 결과값 반환

함수 내부에서 계산되거나 생성된 값을 함수를 호출한 곳으로 돌려줍니다. 이 값을 변수에 담아 다른 곳에 활용할 수 있습니다.

JavaScript
 
function add(a, b) {
    return a + b; // a와 b를 더한 값을 밖으로 던져줍니다.
}

// return된 값이 30이 되어 result 변수에 저장됩니다.
const result = add(10, 20); 
console.log(result); // 30

② 함수 강제 종료

return 문을 만나는 즉시 함수는 실행을 멈추고 종료됩니다. 그 뒤에 작성된 코드는 결코 실행되지 않습니다.

JavaScript
 
function test() {
    console.log("실행됩니다.");
    return; // 여기서 함수가 끝납니다!
    console.log("실행되지 않습니다."); // 무시되는 코드
}

3. return이 없는 함수는 어떨까?

만약 함수에 return 문이 없거나, return 뒤에 아무런 값도 적지 않는다면 함수는 기본적으로 **undefined**를 반환합니다.

JavaScript
 
function noReturn() {
    const sum = 1 + 1;
    // return이 없음!
}

const value = noReturn();
console.log(value); // 결과: undefined

🖥️ 실전 예제 코드: "성인 확인기"

return의 종료 기능을 활용하여 조건에 맞지 않을 때 함수를 미리 끝내는 예제입니다.

JavaScript
 
function checkAge(age) {
    // 1. 조건에 맞지 않으면 즉시 종료 (Early Return)
    if (age < 20) {
        return "미성년자는 입장할 수 없습니다.";
    }

    // 2. 위 조건을 통과한 경우에만 실행
    return "환영합니다! 입장이 가능합니다.";
}

console.log(checkAge(15)); // 미성년자는 입장할 수 없습니다.
console.log(checkAge(25)); // 환영합니다! 입장이 가능합니다.

학습 정리

  • **return**은 함수의 최종 결과물을 '배출구'로 내보내는 역할을 한다.
  • return된 값은 변수에 저장하여 다른 계산에 계속 사용할 수 있다.
  • 함수 안에서 return을 만나면 그 즉시 함수는 종료된다.
  • 반환값이 필요 없는 함수는 return을 생략해도 되지만, 이때 결과값은 언제나 **undefined**이다.

함수의 결과물을 다루는 return까지 마스터하셨습니다!


'JavaScript' 카테고리의 다른 글

Event Handler and Event Listener  (0) 2026.02.14
Types of Event  (0) 2026.02.14
Parameter and Argument  (0) 2026.02.14
Function Expression  (0) 2026.02.14
Function  (0) 2026.02.14