← Back to NOTES 🌰 ← Effective JavaScript 🤿
클로저와 호이스팅으로 인해 반복문에서 생성되는 함수들이 예상과 다르게 동작할 수 있다. 즉시 실행 함수 표현식(IIFE)을 사용하여 각 반복에서 독립적인 지역 스코프를 생성하면 이 문제를 해결할 수 있다.
반복문 내에서 함수를 생성할 때, 모든 함수가 같은 변수를 참조하여 예상치 못한 결과가 발생
var로 선언된 변수는 함수 스코프를 가짐IIFE 내부에서 새로운 변수를 생성하지만 여전히 외부 변수 참조
IIFE 내부에서 생성한 로컬 변수를 함수에서 참조
IIFE의 매개변수를 통해 현재 값을 바인딩