변수와 상수

hanyoko·2023년 6월 18일
0

JAVASCRIPT

목록 보기
2/32
post-thumbnail

변수

데이터를 담기 위한 메모리 공간을 의미한다.

쉽게 생각하면, 어떤 값을 담기 위한 상자나 그릇이라고 비유할 수 있다.

var

var name = "고요한";
var name = "한요고";

  • 함수 스코프
  • 변수 선언부가 호이스팅 된다. (값에는 적용되지 않는다.)
  • 같은 이름의 변수를 여러번 선언 가능하다.

var는 메모리에 지정한 값의 주소를 끌어오기 때문에 중첩하여 작성하여도 오류가 발생하지 않는다.

호이스팅 ?

순서에 상관없이 위쪽으로 끌어 올린다.

호이스팅 : 우선순위가 높아지는 것

let

let name = "고요한";
let name = "한요고"; → 불가능 why? 변수의 이름이 같을 수 없다.
let name2 = "한요고"; → 가능

  • 블럭 스코프
  • 같은 이름의 변수를 선언할 수 없다.
  • 재할당 가능하다.

상수

상수란 변하지 않는 값이다.

const

const name= "상수";

선언시 반드시 같이 할당 해야한다.

const name; 값을 할당하지 않으면 Error가 뜬다.
Uncaught SyntaxError: Missing initializer in const declaration 가 나타나게 된다.

  • 블럭 스코프
  • 선언과 동시에 할당해야한다.
  • 재할당이 불가능하다 (할당한 값을 변경할 수 없다)

letconst 비교

let

let userName = "abc"
userName = "aaa"let은 처음에 입력한 값을 바꿀 수 있다

const

const userName2 = "bbb"const는 처음에 입력한 값을 바꿀 수 없다.
userName2 = "aaa" → 에러가 발생한다.

0개의 댓글