여러 개의 값을 저장하는 방법
// 일반적으로 변수는 하나의 값을 저장하기 위한 수단 var userId = 1 // 객체 & 배열을 사용하면 여러 개의 값을 하나의 값처럼 사용 가능 var user = { id: 1, name: 'Lee' }
변수의 이름이 등록되는 곳은?
- 실행 컨텍스트(execution context) : JS 엔진이 소스코드를 평가 & 실행하기 위해 필요한 환경을 제공하고 코드 결과를 실제 관리하는 영역
var 키워드를 사용한 변수 선언
var score; // 선언 단계
// var = undefined 초기화 단계(암묵적으로 이루어짐)
호이스팅
console.log(score) // undefined
var score;
일반적으로 코드는 인터프리터에 한줄씩 실행되므로 차례대로 실행된다면 score가 출력되는 시점에 변수 score는 아직 정의되어 있지 않으므로 참조 에러가 발생해야 하지만
변수 선언은 소스코드가 실행되는 시점(runtime)이 아닌 그 이전 단계에서 먼저 실행되기 때문에 에러가 발생하지 않는ㄴ다