프로그래밍/javascript&typescript
변수와 상수
하초
2021. 9. 18. 20:16
변수와 상수는 둘 다 데이터를 담는 그릇이다.
둘 사이의 차이점은 데이터 할당 이후에 데이터를 변경할 수 있는가 없는가 차이이다.
변수는 처음 할당해놓은 값을 수차례 변경 가능하고 마지막에 넣은 값이 최종값으로 유지된다.
let age = 10;
age = 20;
age = 30;
반면 상수는 경우 값을 변경할 수 없다.
상수를 다른 값으로 변경하려고 하면 오류가 발생한다.
const age = 10;
age = 20; // 오류
주의할 점이 있다면, 상수에 객체를 할당할 때이다.
상수에 객체를 할당하게 되면, 상수가 영향을 끼치는 범위가 객체 바깥 쪽에만 해당하게 된다.
따라서 상수에 담겨있는 객체 자체를 다른 객체나 값으로 변경하려고 할 때에만 오류가 발생하게 되고,
객체 내부의 속성들의 값은 상수 여부에 상관없이 변경이 가능하다.
const obj = {
height: 300,
width: 200,
}
obj.height = 500; // 변경 가능
obj.width = 700; // 변경 가능
obj = {}; // 오류
변수와 상수 중에서 어떤 걸 주로 사용해야할까?
상수를 많이 쓰는 것을 권장한다.
프로그래밍을 하면서 값을 변화시키는 경우는 생각보다 많지 않다.
값이 변할 수 있다는 것은 불안정성이 높다는 뜻이다.
그러므로 값이 최대한 변하지 않는 구조로 프로그래밍을 하는 습관을 갖는 것이 중요하다.