객체 만들고 이벤트를 걸고

이후 변동 되는 상황에 따라 Aop를 걸어서 이벤트 상황에 변동을 주려고 한다.

$("button").on("click", targetFn);

Aop.before("targetFn", advice, targetObj);


하지만 버튼을 눌러도 Aop적용이 되지 않는다.

함수를 바인딩 시킬 때는 Closure가 적용되어서 다른 객체가 된다.

Closure라는 이름이 왜 클로저인가 몰랐었는데

이렇게 원래 객체와 연결된 문을 닫아 버리기때문인 것 같다.


이벤트에 함수를 바인딩 시킬 때 이후 함수를 조작하고 싶다면

위와 같이 직접 바인딩 시키면 안된다.

$("button").on("click", function(){

targetFn();

});

위와 같이하면 이벤트 실행마다 현재 객체상태로 불러오게 된다.

'javascript' 카테고리의 다른 글

ie, chrom] new Date 관련  (0) 2017.12.27
jquery outerHTML  (0) 2017.12.27
IE에서 inline style 자동 파싱 문제  (0) 2017.12.27
Closure의 중요성  (0) 2017.07.08
&& 와 || 는 if 문에서만 쓰이는 것이 아니다.  (0) 2017.06.18
javascript call과 bind  (0) 2017.05.27

+ Recent posts