함수 안에서 값을 받아서 데이터를 반환할 때 항상 작성되는 것이 있다. 바로 return이다!
이번에는 return이라는 개념에 대해서 같이 알아보도록 하자!
모든 함수는 return을 한다. 만약 return을 하지 않는다면 함수를 호출한 결과를 변수에 저장할 수 없고 다른 로직에 활용할 수도 없을 것이다.
function add() {
let a = 3;
let b = 4;
let sum = a + b;
return sum;
}
let functionResult = add();
console.log(functionResult);
위의 코드와 같이 두 변수 a, b를 더하는 add
함수를 호출해서 return 한 결과값을 변수에 저장하여 console.log
를 이용하여 출력할수도 있고
console.log(add());
변수에 저장하지 않고 return 한 결과값을 바로 출력할 수도 있다.
function add() {
let a = 3;
let b = 4;
let sum = a + b;
}
만약 위와 같이 함수 안에 return이 없다면 어떤 결과가 나올까? return이 없기 때문에 반환하는 값이 없다고 생각할지도 모르지만 사실은 return은 생략되어 있다.
우리 눈에 보이지 않지만 return은 존재하고 undefined
라는 값을 반환하고 있다.
undefinded : 정의되지 않음. JavaScript의 자료형.
함수는 외부에서 데이터를 입력 받아와서 코드를 처리할 수도 있다. 어떻게 외부의 값을 받아올까? 바로 매개변수(parameter)를 이용하면 가능하다!
function getAge(age) {
return age + '살';
}
함수 이름 getAge 옆에 소괄호 안에 들어있는 age가 보인다. 바로 이것이 매개변수이다. 매개변수는 '외부로부터 들어오는 값을 담아 함수 내부에서 사용 가능하도록 하는 변수'입니다.
그렇다면 인자(arguments)란 무엇일까?
getAge(15);
소괄호 안에 들어있는 값처럼 실제로 들어가는 값을 인자라고 부른다. 즉, 인자란 '매개변수 자리에 들어갈 구체적인 값'을 말한다.