본문 바로가기

개발공부/JavaScript

JavaScript 키워드 var에 대하여..

지금은 많이 사용하지 않는 키워드 var에 대해 알아보자. 
var이라는 키워드는 변수를 선언할 때에 사용된다. var 변수는 let과 똑같이 키워드 다음에 변수이름을 써서 변수를 선언한다.

var a = 1;

 

그러나 여러가지 문제점때문에 현재는 많이 사용하지 않는다. 그 문제점을 알아보자.

 

첫번째 문제 : 중복선언허용

var키워드로 선언한 변수는 중복 선언이 가능하다. 똑같은 이름으로 변수를 한 번 더 선언하게 되면, 에러가 발생하는 것이 아니라 그냥 기존의 변수를 덮어쓰게 된다. 

변수가 중복선언이 되면, 길고 복잡한 코드를 작성할 때 실수할 가능성이 커지고 오류가 발생할 수 있다.

 

두번째 문제 : 함수 Scope 문제

 

 let, const 키워드로 선언한 변수는 if,for,function 등등 키워드와 상관 없이 코드 블록(중괄호로 감싸진 부분)을 기준으로 scope를 갖게 되지만, var 키워드로 선언한 변수는 scope가 function에서만 구분되어있다.

 따라서 if,for,while 등의 다양한 상황에서 var 키워드로 선언한 변수는 전역변수의 역할을 하게될 수도 있다. 

 

세번째 문제: Hoisting

 

let과 const로 선언한 변수는 선언되기 이전에 사용할 수 없다. 하지만 var 변수는 선언되기 이전에도 변수에 접근이 가능하다.

 

이렇게 변수가 끌어올려지는 현상을 Hoisting이라고 한다. 

 

Hoisting은 선언과 동시에 값을 할당하더라도, 선언문만 올려지기 때문에 할당된 값은 끌어올려지지 않는다.

 

 

 

JavaScript로 코딩할 때에는 var키워드 보다는 const와 let을 사용하도록 하자!

'개발공부 > JavaScript' 카테고리의 다른 글

JavaScript 자료형 - 숫자형과 문자열  (4) 2024.01.27
JavaScript 배열에 대하여  (2) 2024.01.27
JavaScript 객체와 내장객체  (0) 2024.01.27
JavaScript 기초강의 정리  (2) 2024.01.24