[React] 리액트 실습과제

이경하·2022년 8월 9일
0

React

목록 보기
1/10
post-thumbnail

✍️실습과제

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


👉 출력값&설명

  • b를 처음에 1이라 설정해서 1
  • const a = 1, b의 값이 1인 전역변수가 있지만 let은 블록스코프이기 때문에 let b = 100이 되고, b++를 해서 101
* 전역변수란?
일반적으로 함수의 바깥에서 선언하면 현재 문서의 전체에서 사용

* 블록스코프란?
블록 스코프는 블록({})내부에서 선언된 변수는 해당 블록에서만 접근 가능한 것
- var의 경우 함수 스코프를 따르므로, 함수 내부에서는변수 접근이 가능
- let, const는 블록 스코프를 따르므로 블록 바깥에서는 변수 접근이 불가
  • 전역변수인 b가 있기 때문에 1출력

👉 주석을 풀면 오류가 나는 이유

  • 전역적으로 a라는 변수가 존재하지 않아 오류가 발생한다
    오류가 나지 않게 하려면 a의 초기값을 설정해주거나, function안으로 넣어주면 된다
profile
경듀님

0개의 댓글