JavaScript에서 'var', 'let'을 만들거나 'const'를 유지합니다.
var, let 및 const의 차이점
JavaScript에서 변수는 다음과 같은 세 가지 주요 키워드/방법을 사용하여 할당됩니다.
const.
그러나 JavaScript ES6의 도입으로 var는 변수를 선언하는 오래된 방법이 되었습니다.
변수 선언을 위한 사실상의 방법이 된 let 및 const와 같은 많은 기능이 도입되었습니다.
참고 변수는 컴퓨터 메모리, 즉 데이터를 저장하는 데 사용되는 컨테이너에 공간을 차지하는 값입니다.
JavaScript에서 var, let 및 const에는 차이가 있습니다. 이러한 모든 키워드 간의 이러한 차이점은 다음 개념을 기반으로 합니다.
범위
이것은 변수에 액세스하는 방식을 나타냅니다. 즉, 변수의 액세스 가능성을 결정하는 방법입니다.
JavaScript에는 세 가지 범위가 있습니다.
글로벌 범위
변수가 펑션 블록 외부에서 선언되어 프로그램 내 어디에서나 액세스할 수 있는 경우를 말합니다.
var age = 19;
let game = 'fifa';
const pie = 3.14;
function getAll(){
console.log(age);
console.log(game);
console.log(pie);
}
console.log(age);
console.log(game);
console.log(pie);
getAll();
참고: var, let 또는 const는 프로그램 어디에서나 액세스할 수 있는 전역 변수를 선언하는 데 사용됩니다.
기능 범위
변수가 함수 범위 내에서 선언되고 함수 내에서만 액세스할 수 있는 경우를 말합니다. 로컬 범위라고도 합니다.
function getAge(){
var name = "John";
console.log(name);
}
// console.log(name); // ReferenceError: name is not defined
getAge();
참고: var만 함수 범위입니다. 즉, 함수 블록에서 var에 의해 선언된 변수는 함수 자체에서만 액세스할 수 있으며 함수 외부에서는 액세스할 수 없습니다. 즉, ReferenceError를 발생시킵니다.
블록 범위
변수가 블록 또는 중괄호 안에 선언되어 외부에서 액세스할 수 없는 경우를 말합니다. 블록은 if, for, while 등과 같은 함수 또는 제어 구조일 수 있습니다.
function gaming(){
let name = "John";
const age = 19;
console.log(name);
console.log(age);
}
// console.log(name); // ReferenceError: name is not defined
// console.log(age); // ReferenceError: name is not defined
if(true){
let name = "Paul";
console.log(name);
}
// console.log(name);
gaming();
참고: let 및 const는 모두 블록 범위입니다. 즉, 블록에서 let 또는 const로 선언된 변수는 블록 내에서만 액세스할 수 있으며 블록 외부에서는 액세스할 수 없습니다. 즉, ReferenceError가 발생합니다.
게양
코드 실행 전에 선언을 범위의 맨 위로 이동하는 동작을 말합니다. 변수와 함수가 선언되기 전에 사용되도록 허용하는 경향입니다. 즉, 변수/함수 선언은 코드 블록에서 선언된 위치에 관계없이 실행 전에 코드 블록 시작 부분으로 이동됩니다.
name = "John";
console.log(goal);
var name;
goal = "business";
console.log(goal);
let goal;
goal = "business";
console.log(goal);
const goal;
선언 및 접근성
var를 사용하여 선언한 변수는 초기화하지 않고 선언할 수 있습니다.
var age;
console.log(age); // undefined
참고: var를 사용하여 선언된 변수는 초기화 없이 액세스할 수 있으며 undefined를 반환합니다.
또한 let을 사용하는 경우 초기화 없이 선언할 수 있습니다.
let age;
console.log(age); // undefined
참고: let을 사용하여 선언된 변수는 초기화 없이는 액세스할 수 없으며 오류를 반환합니다.
그리고 const를 사용하는 것은 초기화 없이 선언할 수 없습니다.
const pie;
console.log(pie); // SyntaxError: Missing initializer in const declaration
참고: const로 선언한 변수는 초기화 없이 선언할 수 없으므로 초기화 없이는 액세스할 수 없습니다.
재선언
var를 사용하여 선언한 변수는 다시 선언하고 업데이트할 수 있습니다.
var age = 19;
var age = 20;
age = 30;
let을 사용하는 경우 재선언할 수 없지만 업데이트할 수 있습니다.
let game = 'fifa';
game = 'pes';
그리고 const는 다시 선언하거나 업데이트할 수 없습니다.
const pie = 3.14;
const pie = 2.15; // SyntaxError: Identifier 'pie' has already been declared
pie = 10; // TypeError: Assignment to constant variable.
요약
Image credit: GeeksforGeeks
Reference
이 문제에 관하여(JavaScript에서 'var', 'let'을 만들거나 'const'를 유지합니다.), 우리는 이곳에서 더 많은 자료를 발견하고 링크를 클릭하여 보았다 https://dev.to/lodyne/you-either-make-var-let-or-keep-const-in-javascript-g0o텍스트를 자유롭게 공유하거나 복사할 수 있습니다.하지만 이 문서의 URL은 참조 URL로 남겨 두십시오.
우수한 개발자 콘텐츠 발견에 전념 (Collection and Share based on the CC Protocol.)