"일꾼이 일을 잘하려면 먼저 도구를 갈고 닦아야 한다." - 공자, 『논어』.
첫 장 > 프로그램 작성 > let, const, var Javascript의 차이점은 무엇입니까?

let, const, var Javascript의 차이점은 무엇입니까?

2024-08-21에 게시됨
검색:720

let, const , var difference in Javascript?

JavaScript에서 let, const 및 var는 변수를 선언하는 데 사용되지만 세 가지 면에서 다릅니다.

1. 범위
2. 재할당
3. 호이스팅

1.범위:

var는 기능 범위입니다. 즉, 함수 외부에서 var 변수에 액세스하려고 하면 함수 내 어디에서나 var 변수에 액세스할 수 있으며 정의되지 않은 오류가 표시됩니다.
예:-

function demo(){
  if(true){
    var n = 3;
  }
  console.log(n)
}
console.log(n) //ReferenceError: n is not defined
demo();

let & const는 블록이므로 범위 내에서만 액세스할 수 있습니다. 그렇지 않으면 정의되지 않은 오류가 표시됩니다.
예:-

function demo(){
  if(true){
    let n = 3;
    const m = 5;
     console.log(n) // 3
     console.log(m) // 5
  }
  console.log(n) //ReferenceError: n is not defined
  console.log(m) //ReferenceError: n is not defined
}
console.log(n) //ReferenceError: n is not defined
console.log(m) //ReferenceError: n is not defined
demo();

2. 재배치

  • var: 해당 범위 내에서 재할당하고 다시 선언할 수 있습니다.
  • let: 재할당할 수 있지만 해당 범위 내에서 다시 선언할 수는 없습니다.
  • const: 재할당하거나 다시 선언할 수 없습니다. 변수 자체는 변경할 수 없지만 const에 할당된 개체와 배열은 계속 수정할 수 있습니다. .

3. 게양

  • var는 호이스트됩니다. 즉, 선언 전에 액세스할 수 있지만 코드가 변수가 초기화되는 줄에 도달할 때까지 해당 값은 정의되지 않습니다.
  • let도 호이스팅되지만 var와는 달리 "시간적 데드존"으로 인해 선언 전에는 접근할 수 없습니다.
  • const로 선언된 변수도 호이스팅되지만 선언 시 초기화되어야 하며 재할당될 수 없습니다. 그러나 변수가 객체 또는 배열인 경우 해당 내용을 수정할 수 있습니다(예: 배열에서 항목 추가 또는 제거).
// var example
console.log(a); // undefined (due to hoisting)
var a = 10;
console.log(a); // 10

// let example
console.log(b); // ReferenceError: Cannot access 'b' before initialization
let b = 20;
console.log(b); // 20

// const example
const c = 30;
c = 40; // TypeError: Assignment to constant variable
릴리스 선언문 이 글은 https://dev.to/sagar7170/let-const-var-difference-in-javascript-2d82?1에서 복제됩니다. 침해 내용이 있는 경우, [email protected]으로 연락하여 삭제하시기 바랍니다.
최신 튜토리얼 더>

부인 성명: 제공된 모든 리소스는 부분적으로 인터넷에서 가져온 것입니다. 귀하의 저작권이나 기타 권리 및 이익이 침해된 경우 자세한 이유를 설명하고 저작권 또는 권리 및 이익에 대한 증거를 제공한 후 이메일([email protected])로 보내주십시오. 최대한 빨리 처리해 드리겠습니다.

Copyright© 2022 湘ICP备2022001581号-3