잘못된 생각 최근까지 javascript는 함수 호출 시 참조형이면 넘길 때도 call by reference로 넘겨지고, 원시형이면 call by value로 넘겨지는 줄 알고 있었다. 그러다 최근 질문이 들어와서 답해주려다 자세히 알아보니, 잘못 알고 있었다는 것을 깨달았다. Call by Value & Call by Reference 우선 흔히 알고 있는 두 가지 개념에 대해 살펴보자 Call by Value 호출자가 실제 매개 변수를 평가하고 그 값을 호출자에게 전달하는 관례 호출자에서 값 매개 변수의 수정 내용은 호출자에서 볼 수 없다. Call by Reference 설명을 좀 줄이자면, 호출자(caller)가 함수에 전달한 실제 매개변수(actual parameter)가 변수일 경우, 컴파일..