관리 메뉴

Dev Blog

const 는 값을 변경할 수 없다? Nope. 본문

Development Notes/Javascript & Typescript

const 는 값을 변경할 수 없다? Nope.

Yongjae Kim 2022. 11. 25. 08:39

 

const 키워드는 상수(const) 를 선언하기 위해 사용한다. 

하지만, 반드시 상수만을 위해 사용하지는 않는다. 

 

const 키워드로 선언된 변수에 원시 값을 할당한 경우 값을 변경할 수 있다.

하지만, const 키워드로 선언된 변수에 객체를 할당한 경우 값을 변경할 수 있다. 

변경 불가능한 값인 원시 값은 재할당 없이 변경(교체)할 수 있는 방법이 없지만

변경 가능한 값인 객체는 재할당 없이도 직접 변경이 가능하기 때문이다.

이처럼, 

const 키워드는 재할당을 금지할 뿐 "불변" 을 의미하지는 않는다.

다시 말해, 새로운 값을 재할당하는 것은 불가능하지만 

프로퍼티 동적 생성, 삭제, 프로퍼티 값의 변경을 통해 객체를 변경하는 것은 가능하다.
이때 객체가 변경되더라도 변수에 할당된 참조 값은 변경되지 않는다.

 

정리

'Development Notes > Javascript & Typescript' 카테고리의 다른 글

Type inference & Type annotation  (0) 2021.09.01
Difference "any VS unknown "  (0) 2021.07.05
The JavaScript + Firestore Tutorial  (0) 2021.05.05
Comments