[Deep JavaScript] ES6 - let, const

Dae-Hee·2021년 6월 11일
0

Deep JavaScript Study

목록 보기
2/12
post-thumbnail

[Deep JavaScript] ES6 - let, const

👉 var != let, const ?

  • ES5까지는 var 키워드로 변수를 선언했다.

  • var 는 중복선언이 가능하며 Function-Level Scope를 가진다.

  • ES6에서는 Block-Level Scope를 갖는 변수 let 과 / 상수 const 를 지원한다.

👉 let

1. Block-Level Scope

  let obj_a = 'a';
  {
    let obj_a = 'aa';
    let obj_b = 'bb';
  }
  console.log(obj_a);
  // result : a
  console.log(obj_b);
  // result : not defined

---------------------------------------

2. 중복 선언 불가능

  let obj = 'a';
  let obj = 'b';
  // error 발생

---------------------------------------

3. 호이스팅 불가능 

  console.log(obj);
  // error 발생
  let obj = 'a';

---------------------------------------
  

👉 const

1. Block-Level Scope

  {
    const obj = 'a';
    console.log(obj);
    // result : a
  }
  console.log(obj);
  // error 발생

---------------------------------------

2. 값 재할당 불가능

  const obj = 'a';
  obj = 'b';
  // error 발생

---------------------------------------

3. 객체의 요소 변경가능

  const obj = {a : 'a'};
  obj.a = 'b';
  console.log(obj.a);
  // result : b

---------------------------------------
  

0개의 댓글