더북(TheBook)

2.8.3 인라인 익명 함수 대신 블록 스코프 사용

과거 습관: 인라인 익명 함수를 사용하여 루프 내 클로저 문제를 해결한다.

for (var n = 0; n < 3; ++n) {
    (function(value) {
        setTimeout(function() {
            console.log(value);
        }, 10);
    })(n);
}

새로운 습관: 대신 블록 스코프를 사용한다.

for (let n = 0; n < 3; ++n) {
    setTimeout(function() {
        console.log(n);
    }, 10);
}

훨씬 깨끗하고 읽기 쉽다.

신간 소식 구독하기
뉴스레터에 가입하시고 이메일로 신간 소식을 받아 보세요.