[JavaScript] 리턴(Return)

Moon·2024년 10월 24일
0

JavaScript | 기초

목록 보기
10/48
post-thumbnail

함수와 리턴(return)

함수? 수학 시간에 봤던 복잡한 좌표나 숫자 떠오르지만, 사실 함수는 생각보다 단순하다.
함수는 일종의 상자로 생각하면 편하다.

이 상자에 입력값(input)이 들어가고, 상자 안에서 어떤 작업이 이루어진 후 출력값(output)이 나오게 된다.

리턴(return) - 값을 돌려준다

자바스크립트에서 함수는 일을 다 하고 나면 return 키워드를 사용해 값을 돌려준다.

이때 return된 값은 호출한 자리로 슝~하고 돌아가는데, 마치 “일은 내가 했으니 알아서 써라” 하고 내던지는 느낌이다.

return된 값은 편지의 답장이 온 것처럼 함수 호출 위치로 “전달”된다.

리턴(return)의 기본 예시

아래는 get7() 함수가 숫자 7을 반환하는 예시다.

// get7 함수 선언
function get7() {
    // return: 함수가 실행된 후, 값 7을 return(돌려줌)
    // return된 값은 함수 호출한 자리로 전달됨
    return 7;
}

// get7() 함수 호출: 함수가 호출되면 return값 7이 반환되고, 
// 이 값은 console.log에 전달되어 출력됨
console.log(get7()); // 출력: 7

이 함수는 호출되면 무조건 7을 반환한다. return된 값은 함수가 호출된 자리로 돌아가서 console.log()에 전달되어 출력된다.

쉽게 말해, 함수는 계산한 결과값을 외부로 전달하는 역할을 한다.

파라미터가 있는 함수에서의 리턴(return)

함수는 외부에서 파라미터를 받아서 그 값을 처리한 후 결과를 return할 수도 있다.
예를 들어, 어떤 숫자를 받아서 그 숫자의 두 배를 돌려주는 함수를 만들어 보자.

// getTwice 함수: 입력된 숫자의 두 배를 return함
function getTwice(number) {
    return number * 2; // 입력된 값 * 2를 return
}

// 함수 호출: 5를 전달하면 10이 return되고 출력됨
console.log(getTwice(5)); // 출력: 10

여기서 숫자 5가 파라미터로 전달되면, 함수는 5의 두 배인 10을 반환한다. 파라미터 덕분에 입력 을 자유롭게 조정해 원하는 결과를 얻을 수 있다.

생각해보기: 그럼 getTwice(3.5)는 어떤 결과를 줄까? 직접 테스트해보면 파라미터와 return의 관계를 더 쉽게 이해할 수 있을 것이다.

이 함수는 마치 “요청하신 두 배, 바로 나갑니다!” 하고 바로 돌려주는 친절한 계산기 같은 존재!

리턴(return)을 변수에 저장하기

함수의 return값은 변수에 저장할 수 있으며, 이를 다른 연산에 사용할 수 있다.
예를 들어, 두 개의 값을 받아서 각각의 결과를 곱하는 예시를 살펴보자.

let x = getTwice(5); // x에는 10이 저장됨
let y = getTwice(2); // y에는 4가 저장됨

console.log(x * y); // 출력: 40

이 코드에서 x에는 10, y에는 4가 저장되고, x * y를 계산하면 40이 출력된다. 이렇게 return값을 변수에 저장해 두면, 다른 계산이나 로직에서 재활용할 수 있어 함수의 활용도가 훨씬 높아진다.


실습 문제: 주식 수익 계산기 함수 만들기

문제 설명: 사회초년생 지훈이 매수한 주식의 매수 금액, 매도 금액, 보유 주식 수를 바탕으로 총 수익을 계산하고 싶어 한다. 공식은 간단하다:

총 수익 = (매도 금액 - 매수 금액) × 보유 주식 수

구현할 함수: stockProfitCalculator 함수는 매수 금액, 매도 금액, 보유 주식 수를 입력받아 총 수익을 계산한다.

문제 예시 코드

// 주식 수익을 계산해주는 함수 작성
// 여기에 코드를 작성하세요

// 조건 입력 테스트
let buyPrice = 50000; // 주식을 매수한 금액 (1주당)
let sellPrice = 60000; // 주식을 매도한 금액 (1주당)
let numberOfShares = 10; // 보유 주식 수

// 수익 계산 후 출력
let totalProfit = stockProfitCalculator(buyPrice, sellPrice, numberOfShares);
console.log('총 수익은 ' + totalProfit + '원 입니다.');

답안 코드

// 주식 수익을 계산해주는 함수
function stockProfitCalculator(buyPrice, sellPrice, numberOfShares) {
    return (sellPrice - buyPrice) * numberOfShares; // 수익 계산 후 return
}

// 조건 입력 테스트
let buyPrice = 50000; // 주식을 매수한 금액 (1주당)
let sellPrice = 60000; // 주식을 매도한 금액 (1주당)
let numberOfShares = 10; // 보유 주식 수

// 총 수익 계산 후 출력
let totalProfit = stockProfitCalculator(buyPrice, sellPrice, numberOfShares);
console.log('총 수익은 ' + totalProfit + '원 입니다.');

출력 결과:

총 수익은 100000원 입니다.

리턴(return)값의 활용

함수의 return 값은 단순히 출력하는 데 그치지 않고, 변수에 저장하거나 다른 함수의 입력값으로 활용할 수도 있다. 이렇게 하면 여러 함수의 결과를 연결해서 복잡한 작업도 간단하게 처리할 수 있다. 함수의 모듈화를 통해 유연하고 효율적인 코드를 작성할 수 있게 된다.

return값을 통해 함수가 처리한 결과를 외부로 전달하는 방식은 프로그래밍에서 매우 중요한 개념이다.

return을 사용하면 함수의 결과를 변수에 저장하거나, 다른 계산에 활용할 수 있어 함수의 유연성이 크게 향상된다.

함수는 단순한 작업을 반복적으로 처리하는 데 매우 유용한 도구로, 특히 return값을 적절히 활용하면 훨씬 다양한 방식으로 함수를 활용할 수 있다.

profile
MOON.DEVLOG

0개의 댓글