inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

프론트엔드 빌드 시스템 완벽 가이드 - Part.1: 모듈 시스템

CJS - Browserify로 CJS 동작 원리 이해하기

캐싱 단계 질문

해결된 질문

136

2scent

작성한 질문수 13

1

안녕하세요. 좋은 강의 감사합니다.

캐싱 관련해서 이해가 잘 안 되는 부분이 있어 질문드립니다.

강의에서는 modules[moduleId][0].call의 첫 번째 인자로 module.exports를 넘겨주는 것이 캐싱과 관련 있다고 설명해주셨는데요.

제가 코드를 보기엔 module.exportsthisArg로 전달되긴 하지만, 실질적인 캐싱은 함수 내부에서 세 번째 인자인 module 객체를 직접 수정하면서 (module.exports = { add };) 이뤄지는 것으로 보입니다.

즉, thisArg로 전달된 module.exports는 실제로 의미 있는 쓰임새가 없고, 캐싱은 module.exports를 직접 설정함으로써 발생하는 것 아닌가 싶은데, 혹시 제가 잘못 이해한 걸까요?

javascript node.js 웹팩 vite esm

답변 1

2

Rafael

답변이 늦어서 죄송합니다. 질문자님 지적해주신 부분이 맞습니다. 잘못 설명했네요. module.exports call의 첫번째 는 thisArg 이기 때문에 캐싱과 관련이 없습니다. 실제 캐싱은 module.exports 를 직접 대입함으로써 이뤄집니다. 감사합니다!

0

2scent

답변 감사합니다!

설명이 잘못된거같습니다.

1

20

2

오픈톡 인원이 다 차서 들어가지를 못 하네요...

0

36

1

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

0

58

2

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

0

32

1

mission12-01 guide.md파일 누락

0

39

1

자료집 관련

0

42

2

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

0

59

1

챌린지 시작일 문의

0

48

0

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

0

49

1

11차시 Antigravity IDE 설치 후

0

46

1

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

0

50

1

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

0

50

1

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

0

52

1

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

0

43

1

Context API vs Zustand 그리고 Auth

1

66

2

순수 함수 / 순수 컴포넌트

0

40

1

css box-sizing 관련 질문

0

46

2

스니펫이 이상해요

0

46

2

Editor Component의 최적화 불가능 이슈

0

58

2

useCallback ⊂ useMemo

0

46

2

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

1

53

1

nestjs 강의는 없나요??

1

53

2

스타터 저장소

1

57

1

번들러 이해 및 학습 방향에 대한 질문입니다.

0

115

2