자바스크립트 입문_불변값
자바스크립트 2021. 5. 3. 13:19(본 포스팅은 위키북스의 '코어자바스크립트' 책을 공부하면서 작성되었습니다_내돈내산)
- 변수(variable)과 상수(constant)를 구분하는 성질은 '변경가능성'에 있음.
- 불변값과 상수는 엄연히 다른개념.
- 변수와 상수를 구분짓는 변경가능성의 대상은 변수영역 메모리에있다. 한번 할당이 이뤄진 변수공간에 다른데이터를 재할당 가능한지에 대해 결정 됨.
기본형 데이터인 number, string, boolean, null, undefined, Symbol은 모두 불변값임.
(예시)
var a = 'abc';
a = a + 'def' ;
var b = 5;
var c = 5;
b = 7;
- 위의 예시에서 'abc'에 'def'를 추가할 경우 'abc'가 'abcdef'로 바뀌는 것이 아닌 새로운 'abcdef'가 생성됨
- b에 5를 할당하고 c에 5를 재할당하는경우 컴퓨터는 데이터 영역에서 5를 검색해 그 주소를 c에 할당하는 작업을 거침.
- 7을 할당하는 경우 데이터 영역에 7이 존재하지 않기때문에 새로운메모리에 7을 저장하는 작업을 거침.
- 이런 작업에서 우리는 한번 만든값을 바꿀 수 없다는(메모리에 저장된 값을) 개념을 알수 있음. 이렇기 때문에 불변값의 성질을 가지게 된다고 설명할 수 있음.
'자바스크립트' 카테고리의 다른 글
자바스크립트 입문_불변객체 (0) | 2021.05.03 |
---|---|
자바스크립트 입문_변수의 복사 (0) | 2021.05.03 |
자바스크립트 입문_가변값 (0) | 2021.05.03 |
자바스크립트 입문_ 변수선언과 데이터 할당 (0) | 2021.05.03 |
자바스크립트 입문_데이터 타입 (0) | 2021.05.03 |