14. Function(함수) - 데이터 반환하기(2)

장운서·2021년 6월 13일
0

replit - javascript

목록 보기
14/20
post-thumbnail

14. Function(함수) - 데이터 반환하기(2)

이전 시간에는 데이터를 받는 함수에 대해 알아보았습니다. 이번 시간에는 return(리턴, 반환) 해주는 함수에 대해 알아보겠습니다.

14-1. return 함수 정의

return이라는 것은 함수를 호출했을 때, 함수가 값을 반환한다는 뜻입니다.

function multiplyTen(myNumber) {
  return 10 * myNumber;
}

위의 multiplyTen 함수의 정의 → 받은 인자에 10을 곱하여 반환한다!


14-2. return 함수의 호출

함수를 호출해야겠죠! 아래와 같이 여러번 호출할 수 있습니다.

multiplyTen(3); 
multiplyTen(6); 
multiplyTen(12);  

14-3. return 함수의 호출 결과 확인

호출은 했지만, 어떤 값을 리턴했는지 알 길이 없습니다. 즉, 호출된 함수의 return 값을 변수에 저장하는 수밖에 없습니다. 아래와 같이 함수의 반환을 변수에 저장해서 console로 확인해볼 수 있습니다.

let result1 = multiplyTen(3); 
let result2 = multiplyTen(6); 
let result3 = multiplyTen(12);  

console.log(result1); 
console.log(result2); 
console.log(result3);

변수에 저장하기 귀찮다면, 결과값을 바로 console로 확인해도 됩니다.

console.log(multiplyTen(0)); 
console.log(multiplyTen(3)); 
console.log(multiplyTen(2));

14-4. 함수와 return 키워드

사실 함수는 모두 return을 합니다. '음.. 아닌데' 하고 생각이 드셨을 수도 있습니다. 분명 return이 없는 함수를 보신 적이 있을테니까요. 그 경우에도 return이라는 키워드를 생략했을 뿐 함수는 리턴을 합니다. return을 생략하면 함수는 undefined를 반환합니다.

function consoleSuccess(month, name) {   
  console.log(month, name); 
}  

let result = consoleSuccess("3", "김개발"); // 함수를 호출한 결과를 result에 담아서
console.log("consoleSuccess 호출 값은" + result); // 어떤 값이 리턴 되는지 직접 확인해보세요

14-5. 함수 내부에서 다른 함수 호출하기

조금만 더 복잡하게 함수를 사용해보겠습니다.

function getTax(price) {
  return price * 0.1;
}

function calculateTotal(price) {
  return price + getTax(price);
}

const result = calculateTotal(3500);
console.log(result);

이렇게 함수 안에서 또 함수를 호출할 수도 있습니다. calculateTotal 함수 내부에서 getTax를 또 호출했습니다. 함수가 실행되는 시점은 함수를 호출하는 순간이겠죠? 위 코드에서 function으로 함수를 선언하는 부분은 "이런 함수가 있다"고 선언해준 것 뿐입니다. 함수가 실행되는 시점은 바로 calculateTotal(3500)으로 호출 했을 때 입니다.

 

Assignment

index.js에서 getTotal 함수를 만들어주세요.

getTotal 함수는 가격을 2개 받아서 calculateTotal 호출 반환값을 더해서 리턴하는 함수입니다.

  • getTotal 이라는 이름의 함수를 만들어주세요. 가격정보 2개를 인자로 받습니다.
  • 인자이름은 원하는대로 지어주셔도 됩니다.
  • getTotal 함수에서 인자로 받은 가격으로 각각 calculateTotal 함수를 호출해주세요. 그리고 그 결과값을 더해서 반환해주세요.

참고사항

  • getTax 함수는 가격의 tax를 구하는 함수입니다.
  • calculateTotal 함수는 상품의 가격에 tax를 더한 값을 구하는 함수입니다.
  • getTotal 함수는 두 상품의 가격을 더해서 반환하는 함수입니다.


//assignment
function getTotal(price1, price2) {
 return  calculateTotal(price1) +  calculateTotal(price2);
}

profile
방향성을 찾고싶은 프론트엔드개발자

0개의 댓글