본문 바로가기
카테고리 없음

자바스크립트의 call by value

by Node.js 주니어 개발자 귤 2023. 4. 20.

자바스크립트에서 call by value는 함수에 인자를 전달하는 방법 중 하나입니다.

값이 전달되면 값의 사본이 생성되어 함수에 전달됩니다.

이는 함수 내에서 값에 대한 변경이 함수 외부의 원래 값에 영향을 미치지 않는다는 것을 의미합니다.

 

예제 코드 

 

function double(num) {

    num = num * 2;

    return num;

}

 

let x = 5;

double(x);

console.log(x); // output: 5t

 

이 코드에서 변수 'x'는 'double' 함수에 인수로 전달됩니다.

함수 내에서는 'x' 값의 사본이 생성되고, 이 사본이 두 배가 됩니다.

그런 다음 함수는 이 두배가 된 값을 반환하지만 함수 외 일부의 원래 'x' 값은 변결되지 않습니다.

 

이는 참조에 의한 호출(call by reference)과 다릅니다.

참조에 의한 호출에서는 원래 값에 대한 참조가 함수에 전달됩니다.

함수 내에서 값에 대한 변경이 함수 외부의 원래 값에도 영향을 미칩니다.

자바스크립트는 참조에 의한 호출을 지원하지 않습니다.