![[바닐라 JS] const and let](https://image.inblog.dev?url=https%3A%2F%2Finblog.ai%2Fapi%2Fog%3Ftitle%3D%255B%25EB%25B0%2594%25EB%258B%2590%25EB%259D%25BC%2520JS%255D%2520const%2520and%2520let%26logoUrl%3Dhttps%253A%252F%252Finblog.ai%252Finblog_logo.png%26blogTitle%3DCoding_study&w=2048&q=75)
1. 첫 줄만 let으로 변경

콘솔 결과 확인

전부 let으로 해도

결과는 같아

그럼 let과 const 차이는 뭘까?
2. const와 let 차이
- const 는 상수이고 값이 바뀔 수 없다는것
- let 선언된 변수에 값을 재할당할 수 있다.
2-1) let
variable 값을 변경하는 게 필요한 경우도 있을까? a, b 는 변경을 안해도 되고 myName 이 마음에 안 들어서 이걸 바꾼다고 해보자 맨 마지막 값을 바꿀 수 있어!!

let을 다시 정의 하지 않음 새로운 것을 생성할 때 사용하는 것 한번 생기고 나면 업데이트 하고 싶을때 그냥 업데이트 하면 된다.

2-2) 콘솔 결과 확인 - myName 바뀜!!

2-3) const

2-4) 에러 - 콘솔 결과 확인

constant variable 에 새로운 값을 대입할 수 없다. 즉 const 로 만들었다면 너는 절대 값을 업데이트 할 수 없다는 이야기. 박빡하다고 생각할 수도 있는데… 가끔 몇몇 variable 은 절대로 변하지 않도록 해야 할 때가 있다. 그리고 가끔 몇몇 variable 은 바뀔 수도 있다고 하고 싶고~ 이게 자바스크립트의 장점이라함~ 자바스크립트 자체에서 myName 은 바뀌면 안되는건데 바뀌려고 한다고 알려줌
2-5) 그럼 나는 어떤걸 써야 될까?
기본적으로 const 를 사용, let 을 필요할때만 사용
많은 사람들 const를 기본적으로 사용하고 variable 업데이트 하고 싶으면 let을 쓰는거 모든 변수를 업데이트 해야 하는 경우는 잘 없으니.. 프로그램에서 몇몇 중요한 부분만 업데이트 하게 됨 그래서 대부분 const 로 만들거고 때에 따라서 let 을 사용해서 만드는거다.
처음부터 const 와 let 이 있었던건 아님 자바스크립트는 한 사람이 10일 동안 만든 것이기 때문에 언어가 몇몇 업데이트를 거치게 되있는데… 업데이트라기보단 패치라고 봐야 함 왜냐면 여전히 쓸 수 있는 몇몇 오래된 자바스크립트 요소가 있고 지금까지도 사용 가능하기때문 자바스크립트는 업데이트를 할 수 없어 업데이트라는건 우리가 오래된 버전을 더이상 사용하지 않고 새로운 버전만 사용한다는 거거든.. 자바스크립트에서는 그럴수 없는 게 정말 많은 웹사이트가 있고 오래된 버전의 자바스크립트를 사용하는 많은 웹사이트들에게 그 자바스크립트는 사용할 수 없어!! 라고 할 수 없기 때문 그래서 자바스크립트를 사용하면서 몇몇 오래된 것이나 오래된 방식을 보게 될 것이다. 예전에는 오직 var만 있었음 var는 이상한 규칙이 있었는데 var을 원한다면 어디서든 업데이트 할 수 있었다는 것 하지만 문제점이 있는게 이러면 우리는 언어를 통한 보호를 받지 못해 내가 만약 실수로 a의 값을 업데이트 해도, 언어가 말해주질 않는다. 그래서 const 와 let 을 만든 이유 이를 통해 몇몇 값을 보호할 수 있다. var, const, let을 브라우저는 다 이해한다는 것 let 업데이트가 허용되야하는 곳에 사용 var는 규칙이 없어 결론은 기본적으로 const를 쓰고 필요할때 let을 씀, var는 노노!!
Share article