[JS] 전역객체를 통한 변수접근 질문

조회수 507회
var a = 10;
function f () {
    var a = 100;
    console.log(a);
    console.log(window.a);
}
f();

이렇게 var를 통해 변수를 선언해서 함수 내에서 전역객체에 접근하여 동일한 이름의 전역변수를 참조하는 건 가능한데

const a = 10;
function f () {
    const a = 100;
    console.log(a);
    console.log(window.a);
}
f();

이렇게 const나 let을 통해 선언을 하면 window.a가 undefined를 뱉어내네요.. 공부중에 왜 이런일이 생기는지 궁금해서 질문 올려봅니다.. ㅠㅠ

  • (•́ ✖ •̀)
    알 수 없는 사용자
  • 정확하게는 몰라서 답변은 못드리지만 var와 let, const는 서로 다른 내부 영역에 저장되기 때문이라고 어렴풋이 알고있습니다. 알 수 없는 사용자 2019.2.5 19:39

답변을 하려면 로그인이 필요합니다.

프로그래머스 커뮤니티는 개발자들을 위한 Q&A 서비스입니다. 로그인해야 답변을 작성하실 수 있습니다.

(ಠ_ಠ)
(ಠ‿ಠ)