본문 바로가기

필사적 필사

자바스크립트 문법(7) 함수의 반환값

본 게시글은 아래의 글을 필사하였습니다.

https://webdoli.tistory.com/69?category=833233

 

자바스크립트 문법(7) 함수의 반환값

(7) 함수의 반환값 기존 자바스크립트 함수에서 불편한 점은, '반환값'이었다. 전체적으로 봤을 때 비슷한 2가지 기능을 수행하려면 함수를 2개 만들어야 했다. 만일, 하나의 함수에서 두개의 기능을 만드려면, 프..

webdoli.tistory.com

기존 자바스크립트 함수에서 불편한 점은, '반환값'이었다. 전체적으로 봤을 때 비슷한 2가지 기능을 수행하려면 함수를 2개 만들어야 했다. 만일, 하나의 함수에서 두 개의 기능을 만드려면, 프로토타입 객체로 함수를 다시 만들어야 하는 불편함이 있었다.

ES2015 버전에서는 더 이상 반환값을 하나만 반환하지 않아도 된다. 배열을 만들어서 여러개의 반환값을 반환할 수 있게 되었다. 아래의 예제를 보자.

function various(...nums) {
  var plus1 = 0;
  var mult = 1;
  
  for(let num of nums) {
    plus1 += num;
  }
  
  for(let num of nums) {
    mult *= num;
  }
  
  return [plus1, mult];
}

let [plus2, mult2] = various(1,4,7,3);

console.log(plus2); //결과 : 15
console.log(mult2); //결과 : 84

let result = various(1, 4, 7, 3);
console.log(result); //결과 : [15, 84]

return 값을 배열로 입력하면, 분할 대입을 활용하거나 변수에 담아서(배열) 결과값을 도출할 수 있다. 함수는 various 한 개이지만 various 함수로 덧셈과 곱셈 재귀기능을 할 수 있다.