✍️실습과제
👊 콘솔에 찍힐 b 값을 예상해보고, 어디에서 선언된 “b”가 몇번째 라인에서 호출한 console.log에 찍혔는지, 왜 그런지 설명해보세요. 주석을 풀어보고 오류가 난다면 왜 오류가 나는 지 설명하고 오류를 수정해보세요.

👉 출력값&설명

- b를 처음에 1이라 설정해서 1
- const a = 1, b의 값이 1인 전역변수가 있지만 let은 블록스코프이기 때문에 let b = 100이 되고, b++를 해서 101
* 전역변수란?
일반적으로 함수의 바깥에서 선언하면 현재 문서의 전체에서 사용
* 블록스코프란?
블록 스코프는 블록({})내부에서 선언된 변수는 해당 블록에서만 접근 가능한 것
- var의 경우 함수 스코프를 따르므로, 함수 내부에서는변수 접근이 가능
- let, const는 블록 스코프를 따르므로 블록 바깥에서는 변수 접근이 불가
👉 주석을 풀면 오류가 나는 이유
- 전역적으로 a라는 변수가 존재하지 않아 오류가 발생한다
오류가 나지 않게 하려면 a의 초기값을 설정해주거나, function안으로 넣어주면 된다