본문 바로가기
반응형

javascript 클로저2

자바스크립트 클로저 Closure와 for 반복문 바인딩 예제 5개 클로저를 활용할 경우 여러 장점이 있지만, 변수가 묶여 반복문이 비정상적으로 구동하는 경우가 있습니다. 예를 들면 아래와 같습니다. var funcs = []; for (var i = 0; i < 3; i++) { funcs[i] = function() { console.log("My value: " + i); }; } for (var j = 0; j < 3; j++) { funcs[j](); } 의도는 1, 2, 3을 순차적으로 출력하는 것입니다. 하지만, 클로저 결과 화면처럼 3이란 숫자만 3번 출력됩니다. 문제는 변수 i 가 외부 변수에 바인딩된다는 것입니다. 하지만, 여러 해결책이 있습니다. 하나씩 알아보겠습니다. ◆ 인덱스 변수를 묶는 가장 간단하고 읽기 쉬운 방법 for (var i = 0; .. 2019. 6. 20.
[자바스크립트 강좌 006] JavaScript 클로저로 메서드 연결 (closure) [자바스크립트 강좌 006] JavaScript 클로저로 메서드 연결 (closure) 클로저는 성능적인 면과 자원적인 면에서 약간 손해를 볼 수 있으므로 무차별적으로 사용해서는 안 된다. 사실 클로저를 잘 활용하려면 경험이 가장 중요하게 작용한다. 여기서는 아주 전형적인 JavaScript 클로저의 예제 코드를 소개할 텐데, 어느 정도 클로저의 감각만이라도 얻어갈 수 있기를 바란다. 진정 좋은 자바스크립트 프로그래머가 되려면 많은 개발 경험을 쌓는 것이 가장 좋은 방법이다. 특정 함수에 사용자가 정의한 자바스크립트 객체의 메서드 연결하기 123456789101112131415function HelloFunc(func) { this.greeting = "hello";} HelloFunc.prototype.. 2017. 12. 20.
반응형