엉망진창 아닌가요? <변수 선언자>

c0ng·2023년 1월 26일
0

javascript를 처음 보는 나같은 사람들에게는
var, let, const, readyonly(?) 니들은 뭔데 라고 생각할거다. 백프로

게다가 ES6로 js가 진화(?)하면서 var는 저 멀리 사라지고 let, const만 살아남았는데
얘네들도 var랑 또 달라. 조금씩 다르더라고?

여튼....

기본개념은 요기조기 요리조리 이것저것 잘 읽어보면 이해가 된다.

꼭 기억해야할것들을 적어놓자... (내 공간이야 여기..)

const

고정값이라고 생각하면 되는데 아예 그렇게 생각하면 또 안된다(!)

The value of a constant can't be changed through reassignment (i.e. by using the assignment operator), and it can't be redeclared (i.e. through a variable declaration).
However, if a constant is an object or array its properties or items can be updated or removed.

상수값은 재할당을 통해 바뀔수 없으며, 재선언이 될 수 없다.
그러나 만약 상수가 object 이거나 array 라면
그것의 properties 나 items 들은 수정되거나 지워질 수 있다...

그러니까 간단히 말해서 메모리 주소 값만 고정이라는거지? 그렇다면 아래처럼 될 수 있다는 말이다.

const obj = {
	name: 'pudding',
    age: 30
};
const array = [1, 2, 3];

obj.age = 20; // fine
array.push(4); // fine

(pudding.log 발췌)

메모리 주소값을 고정하려면 그러니까 초기에 알았던 개념의 const를 쓰려면
typescript라는 또 다른 js의 혼종을 알아야한다. (뭐가 많아 javascript...)
as const 라고 하는데 우선 js가 먼저니 추후에 알아보자... (언젠가 공부하겠지...?)

profile
농부 대장님 아래서 일하는 잡초

0개의 댓글