자바스크립트가 제공하는 7가지 데이터 타입(숫자, 문자열, 불리언, null, undefined, 심벌, 객체타입)은 크게 원시 타입promitive type과 객체 타입object/reference type으로 구분할 수 있다. 원시 타입의 값, 즉 원시 값은 변경 불가능한 값immutable value이다. 객체(참조) 타입의 값, 즉 객체는 변경 가능한 값mutable value이다. 원시 값을 변수에 할당하면 변수(확보된 메모리 공간)에는 실제 값이 저장된다. 객체를 변수에 할당하면 변수(확보된 메모리 공간)에는 참조 값이 저장된다. 원시 값을 갖는 변수를 다른 변수에 할당하면 원본의 원시 값이 복사되어 전달된다. 이를 값에 의한 전달pass by value라 한다. 객체를 가리키는 변수를 다른 ..