자바스크립트 함수 리턴(Return)

자바스크립트에서 함수는 작업을 수행하기 위한 코드 블록입니다. 이때, 함수가 결과값을 반환하는 경우도 많이 있습니다. 함수의 반환은 함수가 실행된 후 호출자에게 값을 돌려주는 것을 의미합니다. 이를 리턴(Return) 이라고도 부릅니다.

함수에서 값을 반환하기 위해서는 return 키워드를 사용합니다. return 키워드 이후에는 반환하고자 하는 값을 명시해주어야 합니다. 예를 들어, 다음과 같은 함수가 있다고 가정해봅시다.

function add(a, b) {
  return a + b;
}

위의 함수는 매개변수 ab를 받아서 더한 값을 반환합니다. return 키워드를 통해 계산된 결과값이 함수 외부로 전달됩니다. 따라서, 아래와 같이 함수를 호출하면 결과값을 받을 수 있습니다.

let sum = add(2, 3);
console.log(sum); // 5

위의 예제에서 add 함수는 23을 인자로 받아서, 이를 더한 후 반환합니다. 이 값은 sum 변수에 저장되어 console.log를 통해 출력됩니다.

리턴은 함수에서만 사용되며, 함수 실행 후에는 코드의 흐름을 함수 밖으로 전달합니다. 따라서, return 키워드 이후의 코드는 실행되지 않습니다. 예를 들어, 다음과 같은 함수가 있다고 가정해봅시다.

function isPositive(number) {
  if (number > 0) {
    return true;
  } else {
    return false;
  }
  console.log("This code will not be executed!");
}

위의 함수는 매개변수 number가 양수인지 판별하여 결과값을 반환합니다. 만약 number이 양수라면 true를 반환하고, 그렇지 않다면 false를 반환합니다. 함수 내부에서 return 키워드 이후의 코드는 실행되지 않기 때문에, 마지막 줄의 console.log는 실행되지 않습니다.

함수에서는 return 키워드를 사용하여 하나 이상의 값을 반환할 수도 있습니다. 이때는 반환값을 ,로 구분하여 나열하면 됩니다. 예를 들어, 다음과 같은 함수가 있다고 가정해봅시다.

function squareAndCube(number) {
  return [number ** 2, number ** 3];
}

위의 함수는 매개변수 number의 제곱과 세제곱을 배열로 묶어 반환합니다. return 문에서는 [number ** 2, number ** 3]와 같이 값을 배열로 만들어 반환하여 두 결과값을 함께 전달합니다. 함수 호출 후에는 반환값을 각각의 변수에 저장하여 사용할 수 있습니다.

let result = squareAndCube(2);
console.log(result); // [4, 8]
let square = result[0];
let cube = result[1];
console.log(square); // 4
console.log(cube); // 8

위의 예제에서 squareAndCube 함수는 2를 매개변수로 받아 제곱과 세제곱을 계산하여 배열로 반환합니다. result 변수에 배열이 저장되며, squarecube 변수를 통해 각각의 값을 추출하여 출력할 수 있습니다.

자바스크립트 함수에서 리턴은 함수의 결과값을 반환하는 중요한 개념입니다. return 키워드를 사용하여 함수의 결과를 외부로 전달하고, 이를 통해 다양한 용도로 활용할 수 있습니다.