더북(TheBook)

참조 우선순위

let, const 키워드는 같은 식별자의 중복 선언이 불가능합니다. 하지만 정확하게는 같은 스코프 영역에서 중복 선언이 불가능하다고 할 수 있습니다.

다음 코드를 보면 let, const 키워드로 변수 a, b를 함수 외부에 선언하고, 함수 내부에도 똑같이 변수 a, b를 선언했는데 중복 선언 오류가 발생하지 않습니다.

10/04/reference.js

let a = 10;
const b = 20;
function sum(){
  let a = 50;
  const b = 70;
  console.log(`함수 내부 a: ${a}`);
  console.log(`함수 내부 b: ${b}`);
}
sum();

실행결과

함수 내부 a: 50
함수 내부 b: 70

전역 스코프와 지역 스코프에 같은 식별자를 가지는 참조 대상이 있다면, 먼저 같은 지역 스코프의 식별자를 참조합니다. 그리고 같은 지역 스코프에서 참조할 식별자를 찾지 못할 때만 전역 스코프에서 찾습니다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.