본문 바로가기

자바스크립트

변수, var let const

let myNumber = 23;

myNumber는 변수의 값이 아닌 메모리 주소를 기억한다.

변수명을 사용하면 자바스크립트 엔진이 변수명과 맵핑된 메모리 주소를 통해 거기에 저장된 값 23을 반환한다.

 

값을 저장하는것 - 할당

저장된 값을 읽어들이는것 - 참조

자바스크립트 엔진에 알리는것 - 선언

 

호이스팅 - 식별자(var, let, function 등)는 어디에 있든 상관없이 다른 코드보다 먼저 실행되는(런타임 이전) 특징

1. var k;

2. console.log(k);  // undefined

 

1. console.log(k);  // undefined

2. var k;

k를 뒤에서 선언했는데도 undefined로 초기화됨

-> 해당 변수가 없으면 아예 not defined라고 에러가 뜸

-> 값 할당이 안됬을 뿐 선언은 되어서 undefined를 반환

 

var 특징

  • 변수 중복 선언 가능 - 예기치 못한 값 반환 가능
  • 함수 레벨 스코프 - 전역 변수로 인식
  • 변수 선언문 이전에 변수를 참조하면 항상 undefined 반환

let 특징

  • 중복선언 불가
  • 재할당 가능
  • 블록 레벨 스코프

const 특징

  • 선언과 초기화 동시에 진행해야함
  • 재선언, 재할당 불가
  • 블록 레벨 스코프

 

 

'자바스크립트' 카테고리의 다른 글

배열 관련 함수들  (0) 2022.05.14
문자열 자르기  (0) 2022.05.11