첫 번째 질문: 이것은 js 지식의 어느 부분에 속합니까?
두 번째 질문: 왜 i가 5와 같은지 일반인의 용어로 설명하시겠습니까?
0o0
PHP中文网2017-06-12 09:31:37
이 문제는 클로저인가요? 클로저는 아닌 것 같고, 함수 중첩이 없습니다와 익명 함수의 문제입니다. 익명 함수를 생성하고 즉시 실행하는 데에는 클로저가 포함되지 않습니다. 즉 5.
이것은 다음과 같습니다: i
的值变成 5
退出循环, console.log(i)
打印当前的 i
으아악
怪我咯2017-06-12 09:31:37
이것은 js에 블록 수준 범위가 없고 함수 범위만 있기 때문에 발생하는 문제입니다. . . Ju는 클로저를 직접 당길 수 있습니다. . . 나는 그것을 받아들인다. . .
伊谢尔伦2017-06-12 09:31:37
JavaScript에는 블록 수준 범위 같은 것이 없으므로 for 루프 {} 및 if 문 {} 내부의 변수는 외부에서 액세스할 수 있습니다.
범위는 전역 범위와 지역 범위로 구분됩니다
문서를 만들 때 전역 범위가 시스템에 내장되어 있습니다.
로컬 범위는 함수를 생성하여 달성됩니다.
ringa_lee2017-06-12 09:31:37
js의 클로저에 대해 알고 싶으셔야 합니다
console.log가 실행되면 for 루프 실행이 완료되므로 i는 자연스럽게 5