inflearn logo
강의

Khóa học

Chia sẻ kiến thức

JavaScript Từng Chút Một

01. Cơ bản về DOM API - (5 trên 6) Xử lý sự kiện theo lô

클로저에 대해서 제가 아는 부분을 공유합니다!

Đã giải quyết

694

withkey

13 câu hỏi đã được viết

1

클로저에 대해서 어렴풋이 알고 있었지만, 막상 이벤트 핸들러 안에서 그것을 바라보니 조금 이해가 안되었는데요!

저처럼 아직 클로저가 익숙하지 않은 분들은 이벤트핸들러를 분리해서 보면 조금 더 이해가 쉽습니다!

그리고 디버거를 이용해서 스코프 안에 있는 변수들을 같이 보면 조금 더 이해가 되실거에요!

일단 클로저를 "어떤 함수가 선언될 때 외부 영역을 기억하는 것" 이라고 생각하고 이 코드를 바라보면

onHelloButtonHandler 라는 함수(이벤트핸들러) 가 선언될 때 myCardCount 의 값을 기억합니다. 즉, Add Card를 할 때마다 + 1씩 올라간다고 하더라도 onelloButtonHandler 에게는 선언될 당시의 cardCount 를 myCardCount 로 받아서 기억하는 것이죠! 개발자 도구 우측에 Scope을 보면 onHelloButtonHandler 함수의 스코프체인을 볼 수 있는데요. myCardCount 가 로컬에 없기 때문에 그 위 스코프를 바라보는데요! 그 스코프가 바로 클로저이고! 저 클로저 스코프 안에 있는 myCardCount 라는 값은 이 함수가 선언될 당시의 값으로 정해집니다! 끝!!

javascript vanilla-js

Câu trả lời 1

1

eunjae

공유 감사합니다 devWithkey 님! 😊

10월 15일 삭제예정 강의 문의

0

32

1

강의제목에 10/15일 삭제라고 나와있는데,

0

46

1

스크립트 영상 미일치

0

73

3

감정일기장 다이어리 필터 적용할때 컨텍스트를 Home에서 가져오는 특별한 이유가 궁금합니다.

0

54

2

강의 설명 중에 헷갈리는 것이 있네요

0

49

1

수업자료 관련 문의

0

65

3

1강 동영상 재생 오류

1

66

2

Composition단계에서 `Layer`는 누가 만드는지

0

42

1

Strict Mode 예시 질문!

0

58

2

수업이 안보여요

0

62

1

저자 블로그에 있는 강의는 어떤 강의인가요?

1

62

1

깃헙 초대 관련

0

113

2

virtual dom과 관련된 인식 피드백

0

105

1

getInitialHTML을 꼭 빌드된 dist 디렉토리 내 파일에서 import하는 이유가 있나요??

1

217

2

번들러를 꼭 사용해야하나요?

3

687

1

filter test 마지막 문제 결과값이 이상합니다.

2

389

1

reactivity.js 를 proxy로 수정 후 오류

0

561

2

첫 강의 배포 & 번들러의 기초에 대한 제 이해가 맞는지 궁금합니다

1

567

1

yarn dev 안되요..

1

592

1

yearn create 1분정도

1

370

1

콘솔창 $0과 this에 대해

0

717

1

소스파일

0

712

2

백틱 치환 기능이 궁금합니다.

0

589

1

쇼핑물 api 입니다.

4

840

1