1. call by value
기본 타입의 경우, 값에 의한 호출, 즉 call by value 방식은 함수 호출 시 인자로 기본 타입의 값을 넘겨, 호출된 함수의 매개변수로 복사된 값이 전달된다. 복사된 값이 전달되기 때문에 함수 내부에서 매개변수를 이용해 값을 변경해도, 실제로 호출된 변수의 값이 변경되지는 않는다.
2. call by reference
앞서 말한 값에 의한 호출과는 달리, 객체와 같은 참조 타입의 경우, 참조에 의한 호출 방식으로 동작한다. 즉, 함수를 호출할 때 인자로 참조타입인 객체를 전달할 경우, 객체의 프로퍼티값이 함수의 매개변수로 복사되지 않는다. 전달되는 값은 인자로 넘긴 객체의 참조값이다. 때문에 함수 내부에서 참조값을 이용해서 인자로 넘긴 실제 객체의 값을 변경할 수 있다.
'개발 관련 > JavaScript' 카테고리의 다른 글
주소 창 parameter 지우기 (0) | 2020.05.17 |
---|---|
함수 (0) | 2020.04.07 |
연산자 (0) | 2020.04.07 |
배열 (0) | 2020.03.31 |
자바스크립트 핵심 개념 (0) | 2020.03.02 |