본문 바로가기

IT개발/Javascript8

[Javascript] 클로저(closure) 란? 기존 객체지향이나 절차적 프로그래밍을 해왔던 페이지 개발자라면 처음에는 이 개념이 어색할 것이다.반면, 함수현 언어로 프로그래밍을 해 왔던 사람에게는 익숙한 개념이다. 간단히 설명하면 클로저란? 함수에 필요한 환경과 지역변수가 결함된 Function 인스턴스이다. - 클로저에서는 함수가 선언된 범위를 벗어난 이후에도 이들 변수를 참조할 수 있다. 이 예제에서 의문을 가질 수 있는 점은 - 준비 핸들러의 실행이 끝나고 페이지를 로드하고나면 콜백이 3초마다 호출되는데, 이 때 local 값은 콜백 함수가 실행되는 동안 정의되지 않았다고 짐작할 것이다. - local이 선언된 블록은 준비 핸들러가 끝나면서 범위를 벗어났다고 생각하게 된다. - 함수의 선언으로 생성된 클로저는 local을 포함한다. 그러므로 함.. 2014. 1. 23.
[Javascript] 콜백 함수란(CALLBACK Function)? 콜백함수 - 디자인 패턴 중 하나인 옵저버 패턴에서 나온 개념 - 이벤트가 발생시 함수를 통해 전달하는 것 - 정해진 이벤트 발생시 함수 동작 Definition - method 실행시에 자동으로 후출되는 함수 - 함수 구현을 위한 로직(Control)과 결과를 표현하는 로직(View)을 분리. (MVC 패턴) Example // 콜백함수 정의function callbackTest(다른변수) { alert(다른변수); } // 콜백함수를 호출할 함수 정의 function callbackCall(변수, callback) { if (typeof callback == "function") { callback(); } } // 콜백함수 호출 callbackCall('변수', callbackTest('다른변수')); 2014. 1. 23.