JavaScript - 변수 선언 및 값 할당

Big Jay·2022년 8월 13일
0

JavaScript

목록 보기
3/8

변수 선언은 메모리 공간을 확보하고 변수명과 메모리 공간을 연결하고 변수를 생성한다.

변수 선언문은 아래와 같다.

  • var
  • let
  • const

과거 var를 사용했지만 ES6가 나오고서는 let, const를 사용한다.

var

ES6(ECMAScript 2015) 도입 이전까지 var 명령어는 자바스크립트에서 변수를 선언할 수 있는 유일한 명령어였다.

var number; // 변수 이름(number) 선언

number의 이름으로 변수를 선언함으로써 메모리 공간을 확보하였다.
값이 할당되어 있지 않아 초기화 상태로 값은 undefined 다.

변수 값 할당

변수에 값을 할당할 때는 연산자 =를 사용한다. 할당 연사자는 우변의 값을 좌변의 변수에 할당한다.

var number; // 변수 선언
number = 10; // 값 할당

// 또는 아래와 같이 하나의 문(statement)으로 단축 표현 가능
var number = 10;

이 때 하나의 문으로 작성을 하더라도 변수 선언과 값의 할당을 2개의 문으로 나누어 각각 실행한다.

console.log(number); // undefined

var number; // 변수 선언
number = 10; // 값 할당

console.log(number); // 10

근데 자바스크립트는 인터프리터 언어인데 왜 변수가 선언되기 전에 변수 number가 확인이 되는 걸까?

이는 변수 선언은 런타임 이전에 먼저 실행 되기 때문이다.

이처럼 변수 선언이 코드 상위로 끌어 올려진 것처럼 동작하는 것을 변수 호이스팅(variable hoisting)이라고 한다.

❗️변수 선언은 런타임 이전에 실행되며, 값의 할당은 런타임에 실행된다.

profile
안녕하세요.

0개의 댓글