모듈을 가져오는 것은 import 문과 같은 줄에 모듈의 코드를 포함한다는 의미입니까?
P粉269847997
P粉269847997 2023-09-16 18:25:30
0
1
375

ReferenceError: 초기화 전에 어휘 선언 'X'에 액세스할 수 없습니다. - MDN, 다음은 잘못된 가져오기의 예입니다.

a.js(입력 모듈):

으아아아

b.js

으아아아

MDN 설명:

이 예에서는 가져온 변수 a가 액세스되지만 초기화되지는 않습니다. 왜냐하면 a被访问,但是未初始化,因为a.js的评估被当前模块b.js의 평가가 현재 모듈

의 평가에 의해 차단되기 때문입니다.

a.js이 말은 모듈을 가져오는 것은 모듈의 코드를 import 문의 줄에 삽입하는 것을 의미한다는 의미로 이해됩니다. 즉, 컴파일하면

는 다음과 같이 됩니다:

으아아아 a.js이 이해가 맞나요? import - JavaScript | MDN에 이 설명이 표시되지 않습니다. 변수 승격으로 인해

의 행을 다시 정렬해도 결과가 변경되지 않으므로 이를 테스트하는 방법을 모르겠습니다. 🎜
P粉269847997
P粉269847997

모든 응답(1)
P粉165823783

가져온 모듈의 코드는 단순히 삽입("붙여넣기")되는 것이 아니라 별도의 클로저에 존재합니다. 이것은 확실히 지나치게 단순화된 것이지만, 저는 모듈을 함수와 export语句与其return문과 비교합니다:

으아아아 으아아아

모듈은 서로를 가져오기 때문에 어떤 순서로도 로드할 수 없습니다. 아무 버튼이나 누르면 "최대 호출 스택 크기가 초과되었습니다" 오류가 발생합니다.

그러나 불필요한 줄을 제거하면(지역 변수를 채운 다음 삭제하면) 작동합니다.

최신 다운로드
더>
웹 효과
웹사이트 소스 코드
웹사이트 자료
프론트엔드 템플릿
회사 소개 부인 성명 Sitemap
PHP 중국어 웹사이트:공공복지 온라인 PHP 교육,PHP 학습자의 빠른 성장을 도와주세요!