jQuery PLUGIN 질문입니다.
본문
<script>
// 소스 순서 1번
$name.set({
value : '안녕';
});
(function() {
function PLUGIN(o, d){
// 소스 순서 3번
var obj = $(this);
obj.data('setInput', (data = new input(obj, o))); // 소스 순서 4번
return this;
}
$.fn.set = PLUGIN; // 소스 순서 2번
var input = function(el, o){
// 소스 순서 5번
}
})();
jQuery PLUGIN 이용해서 PLUGIN 메소스를 호출하는 과정입니다.
소스 순서는 주석으로 처리하였습니다.
문제는 소스순서 4번이 어떻게 소스순서 5번으로 움직이는건데요.
소스순서 4번을 보시면
obj.data('setInput', (data = new input(obj, o)));
obj의 노드를 data 속성 setInput을 (data = new input(obj, o))로 지정하는의미인데
왜 이것이 익명함수 input 을 호출하는건가요?
생성자 input을 new 로 하기때문에 호출하는건가요?
!-->
답변 1
input()이 함수 방식의 클래스로 선언되었겠죠.
모르긴해도 그 함수 안에
this.프로퍼티 = 초기값;
this.메서드 = function(){} 등으로 되어 있을 것으로 보입니다.
new키워드로 객체를 생성하면서 생성자를 호출하므로 그렇게 되었겠죠.
답변을 작성하시기 전에 로그인 해주세요.