모던 자바스크립트 Deep Dive : 11장

jaejin·2024년 2월 25일

11장. 원시 값과 객체의 비교

  • 원시 값을 변수에 할당하면 변수(확보된 메모리 공간)에는 실제 값이 저장되고 원시 값은 변경이 불가능하다.
  • 원시 값을 갖는 변수를 다른 변수에 할당하면 원본의 원시 값이 복사되어 전달되고 이를 값에 의한 전달(pass by value)라고 한다.
  • 객체를 변수에 할당하면 변수(확보된 메모리 공간)에는 참조 값이 저장되고 객체는 변경이 가능하다.
  • 객체를 가리키는 변수를 다른 변수에 할당하면 원본의 참조 값이 복사되어 전달되고 이를 참조에 의한 전달(pass by reference)라고 한다.

11.1 원시 값

  • "원시 값은 변경 불가능하다"는 말은 원시 값 자체를 변경할 수 없다는 것이지 변수 값을 변경할 수 없다는 것이 아니다. 변수는 언제든지 재할당(엄밀히 말하면 교체)을 통해 변수 값을 변경 할 수 있다.

11.2 객체

var person = {
	name: 'Lee'
};

var copy = person;

// copy와 person은 동일한 객체를 참조한다.
console.log(copy === person); // true
  • === 일치 비교 연산자를 통해 객체를 할당한 변수를 비교하면 참조 값을 비교한다.
profile
jjlabsio

0개의 댓글