[javascript] var 키워드의 문제점과 상황별 권장 사용 방법
자바스크립트에서 var
키워드는 변수를 선언할 때 사용됩니다. 그러나 var
키워드는 몇 가지 문제점을 가지고 있으며, ES6(ECMAScript 6)에서 let
과 const
키워드가 추가되면서 이 문제들을 해결할 수 있게 되었습니다. 이 포스트에서는 var
키워드의 문제점과 let
및 const
키워드의 상황별 권장 사용 방법에 대해 알아보겠습니다.
문제점
함수 스코프
var
로 선언된 변수는 함수 스코프를 가지기 때문에 블록 스코프를 가진 let
이나 const
와 달리 함수 내 어디서든 접근이 가능합니다. 이는 의도치 않은 변수 덮어쓰기 문제를 발생시킬 수 있습니다.
호이스팅
var
로 선언된 변수는 선언 단계와 초기화 단계가 분리되어 호이스팅되어 해당 범위 내의 맨 위로 끌어올려집니다. 이는 예상치 못한 동작을 야기할 수 있습니다.
상황별 권장 사용 방법
변수 재할당이 필요한 경우
let
키워드를 사용하여 블록 스코프를 가지는 변수를 선언합니다. 이를 통해 변수 재할당이 필요한 경우에는 let
을 사용하여 예기치 않은 변수 변경을 방지할 수 있습니다.
let count = 0;
count = 1;
상수를 선언하는 경우
const
키워드를 사용하여 상수를 선언합니다. 상수는 재할당되지 않으며, 블록 스코프를 가집니다. 이를 통해 상수값을 변경하는 실수를 방지할 수 있습니다.
const apiKey = 'abc123';
마무리
ES6에서 도입된 let
과 const
키워드는 var
의 문제를 보완하여 안전하고 예측 가능한 코드를 작성할 수 있게 합니다. 따라서 새로운 코드를 작성하거나 기존 코드를 수정할 때에는 var
보다는 let
과 const
를 사용하는 것이 권장됩니다.
참고문헌:
- MDN Web Docs, “var”, “let”, “const” (https://developer.mozilla.org/en-US/docs/Web/JavaScript)