inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

블록레벨 스코프, 스코프 체인과 관련해 궁금한 점이 있습니다.

111

열시미공부합시다

작성한 질문수 1

0

if (true) {   
  let y = 'hi';   
  function test() {     
    console.log(y);   
  } 
}  
console.log(y); // ReferenceError: y is not defined 
test(); // hi

위 코드 실행 시 console.log(y)는 참조 에러, test()는 'hi'가 출력되어집니다.

제가 알기론 자바스크립트는 코드 블럭이 아닌 함수에 의해서 지역 스코프가 생긴다(함수 레벨 스코프)고 알고 있습니다. 따라서 if문(블록문) 내에 정의한 test 함수를 전역에서 호출해도 에러가 발생하지 않는 것이고요.

let, const 키워드로 선언한 변수의 경우 블록 레벨 스코프를 가지기 때문에 전역에서 y 변수 참조 시 참조 에러가 발생하는 것도 이해할 수 있습니다.

제가 궁금한 것은

입니다.

잘못된 개념이 있다면 알려주시면 감사하겠습니다 ㅜㅜ

자바스크립트 javascript scope 스코프 스코프체인

답변 0

수강자료 다운로드 관련 문의

0

24

2

선택정렬 이해하기 & 구현하기

0

10

1

mission12-01 guide.md파일 누락

0

19

1

자료집 관련

0

26

2

13. (App 2) 기본기 훈련 에서

0

36

1

챌린지 시작일 문의

0

40

0

2. 어떤 도구를 사용하는 것이 가장 유리할까? 강의 중

0

32

1

11차시 Antigravity IDE 설치 후

0

34

1

처음 에이전트 설정을 잘못 했을 경우 수정 하는 방법

0

36

1

5,6,7,8 내용이 없어요

0

33

1

ThemeProvider를 이용해서 NextThemeProvider를 따로 생성하여 Layout.tsx에 적용하는 이유는 뭘까요?

0

31

1

mission 09-01 을 수행할 수 없어요

0

33

1

Context API vs Zustand 그리고 Auth

0

40

2

순수 함수 / 순수 컴포넌트

0

29

1

css box-sizing 관련 질문

0

39

2

스니펫이 이상해요

0

34

2

Editor Component의 최적화 불가능 이슈

0

41

2

useCallback ⊂ useMemo

0

38

2

깃허브 저장소를 어디에 첨부하셨나요?

1

46

1

nestjs 강의는 없나요??

1

42

2

스타터 저장소

1

47

1

What is Rxjs

0

34

1

라이브러리 설치 질문

0

36

2

linter 질문

0

42

2