본문 바로가기

자바스크립트

JavaScript 함수 - 함수의 반환과 매개변수

함수의 반환

function Hello(name) {
    return `Hello ${name}` // 여기서 함수가 종료되므로 아래 코드는 동작하지 않습니다.
    console.log('동작하지 않는 줄입니다.')
}

const Hi = Hello('Neo')
console.log(Hi); // Hello Neo

   - return 키워드를 통해 반환값을 반환합니다.

   - 반환이후 함수가 바로 종료되므로, return 이후 구문은 동작하지 않습니다.

 

function a(){
    // return 키워드가 생략되어 있습니다.
}

function b(){
    return // 함수의 데이터가 생략되어있습니다.
}

function c(){
    return undefined
}

   - a, b, c는 모두 같은 내용입니다.

   - 함수에는 return undefined 라는 기본 구문이 생략되어있으며, 가독성을 위해 추가할 수도 있습니다.

 

 

 

 

함수의 인수와 매개변수

function add(a,b){ // 매개변수 a,b
    return a+b
}

console.log(add(1,2)) // 인수 1,2

   - 인수(Argument)는 함수에 넘겨주는 외부의 변수를 의미하며,

   - 매개변수(Parameter)는 인수를 함수 내부에서 사용하기위해 함수 내에서 지정한 값을 의미합니다.

   - 즉 인수는 데이터, 매개변수는 변수입니다.

 

 

 

 

Default (기본값)

function add(a,b=1){
    return a+b
}

console.log(add(1,2))		// a=1, b=2 -> 1+2 = 3 이 반환됩니다.
console.log(add(3))		// a=3, b=기본값 1, 3+1 = 4 가 반환됩니다.
console.log(add())		// a=undefined, b=1 로 지정되어 NaN이 반환됩니다.

function add2(a=1,b){
    return a+b
}

console.log(add(1,2))		// a=1, b=2 -> 1+2 = 3 이 반환됩니다.
console.log(add(3))		// a=3, b=undefined가 되어 NaN이 반환됩니다.
console.log(add())		// a=undefined, b=undefined 로 지정되어 NaN이 반환됩니다.

   - 매개변수에 입력이 기본값을 설정할 수 있습니다.

   - 입력된 인수들은 가장 왼쪽 매개변수부터 채우기 때문에

      기본값을 지정해주기 위해서는 오른쪽 매개변수 모두 기본값이 지정되어야 합니다.