html + css + javascript

[바닐라 JS로 크롬 앱 만들기] const and let

sping2 2023. 6. 19. 13:53
const a = 5; 
const b = 2; //const: 상수. 바뀔 수 없다.
let myName = "spring2"; //let: 바뀔 수 있음.

console.log(a + b);
console.log(a * b);
console.log(a / b);
console.log("hello " + myName);


myName = "s2"; //let으로 선언된 변수의 값을 바꾸기

console.log("Your new name is " + myName);

콘솔창을 확인하면 다음과 같은 결과가 나타난다.


앞에서 myName을 const로 선언하고 실행시키면 콘솔 창에 다음과 같은 에러가 뜬다.

const myName = "spring2"; //let: 바뀔 수 있음.
console.log("hello " + myName);

myName = "s2"; //const로 선언된 변수의 값을 바꾸기 error
console.log("Your new name is " + myName);

Uncaught TypeError: Assignment to constant variable.

constant variable에 새로운 값을 대입할 수 없어요~


const를 쓰는 이유

몇몇 variable은 절대로 바뀔 수 없도록 해야 하기 때문에 const 예약어가 유용하다.
코드를 보고 사람의 의도를 알 수 있다. 무엇을 바꿔도 되고, 무엇을 바꾸면 안 되는지 const, let만 보고 알 수 있다!

 

그럼 도대체 const를 써야 할까? let을 써야 할까?

-> 기본적으로 const를 사용하고, 값을 변경할 가능성이 있는 변수는 let으로 선언한다.

 

 

자바스크립트는 예전에 const, let이 없었고, var를 썼었다.

var는 업데이트 가능하다. 요즘에는 var를 쓰지 않지만 여전히 이걸 이해하긴 함. var를 써서 쓰여진 자바스크립트 코드가 많이 있기 때문이다.

값들을 보호하지 못했다. const를 통해서 보호할 수 있다. 

const, let을 쓰면 앞에서 언급했던 것처럼 코드의 의미를 바로 알 수 있기 때문에 이걸 쓰도록 하자!

 

always const, sometimes let, never var!