SlideShare une entreprise Scribd logo
1  sur  10
Télécharger pour lire hors ligne
Code	
  Review	
  
Core.	
  DOM	
  Manipula0on	
  and	
  Event	
  
core/sel.js	
  
jSelector	
  ||	
  __	
  
•  셀렉터 구문이 그룹인지 싱글인지 체크하여 별도 처리	
  
•  셀렉터 구문은 “,” 유무로 체크	
  
•  외부에서	
  “jSelector”	
  또는 “__”로 함수 호출	
  
	
  



       var	
  result	
  =	
  __(“#sel1,.sel2,…”);	
  
       console.log(result);	
  //	
  Array	
  	
  
core/sel.js	
  
jSelectorNode	
  
•  셀렉터 구문 타입에 따른 분기 처리	
  
•  속성일 경우에는 내부적으로 “jParser”	
  함수를 호출	
  
	
  



       var	
  result	
  =	
  [	
  
               	
  __(“selector”),	
  __(window),	
  …	
  
       ];	
  
       console.log(result);	
  	
  
core/sel.js	
  
jParser	
  
•  셀렉터 구문 타입이 속성일 경우 처리되는 함수	
  
•  속성 이름과 값이 일치하는 모든 엘리먼트를 검색	
  
•  하위 노드가 없을 때까지 재귀 호출	
  
	
  



       var	
  result	
  =	
  __(“[name=value]”);	
  
       console.log(result);	
  	
  
core/lib.js	
  
jEventProxy	
  
•  이벤트 발생시 등록된 리스너 함수의 매개변수로 전달되는 객
       체의 크로스브라우징 처리를 위한 프록시 함수	
  
•  “jHelper.fn.bind” 함수 내부에서 사용	
  
	
  
core/lib.js	
  
jHelper	
  ||	
  $$	
  
•  내부적으로 셀렉터의 결과 값을 얻어오고,	
  DOM	
  관련 함수
       (jQuery 확장 함수와 비슷한 개념)에 접근할 수 있는 객체를 생
       성하여 리턴하는 Wrapping	
  함수	
  




	
  
       var	
  items	
  =	
  __(selector);	
  
       return	
  new	
  jHelper.fn.init(items);	
  
core/lib.js	
  
jHelper.fn	
  
•  DOM 생성, 변경, 이벤트 등의 기능을 제공하는 함수들을 포함
       하며 관련 함수를 외부에서 추가할 수 있는 객체	
  

•  “jHelper.fn.custom	
  =	
  func<on()	
  {	
  }”	
  형태로 외부에서 구현 가능	
  	
  


	
     jHelper.fn	
  =	
  jHelper.prototype	
  =	
  {	
  
              	
  constructor:	
  jHelper,	
  	
  
              	
  init:	
  funcJon()	
  {	
  …	
  },	
  
              	
  …	
  
       };	
  
core/lib.js	
  
jHelper.fn.init	
  
•  “jHelper.fn.init”의 프로토타입을 “jHelper.fn”으로 할당하였으므
  로 “new”	
  키워드를 통해 생성된 객체는 “jHelper.fn”	
  객체에 정
  의된 모든 맴버를 참조할 수 있음	
  


 var	
  jHelper	
  =	
  funcJon(selector)	
  {	
  
           	
  var	
  items	
  =	
  __(selector);	
  
           	
  return	
  new	
  jHelper.fn.init(items);	
  
 };	
  
 jHelper.fn	
  =	
  jHelper.prototype	
  =	
  {	
  …	
  };	
  
 jHelper.fn.init.prototype	
  =	
  jHelper.fn;	
  
core/lib.js	
  
Object	
  rela0ons	
  
	
  



       jHelper	
         jHelper.fn	
      Init	
  
       (Func0on)	
       (Object)	
        (Func0on)	
  
       __proto__	
       __proto__	
       __proto__	
  
       prototype	
       prototype	
       prototype	
  
       fn	
              constructor	
  
                         init	
  
                         …	
  
Conclusion	
  
셀렉터와 엘리먼트 목록을 처리하는 로직을 완전히 분리하여 구
현함으로써 상호 간의 독립성을 갖출 수 있다.	
  
	
  
또한 jQuery의 객체 생성 모델을 기본 컨셉으로 정함으로써 보다
쉽게 기능을 확장할 수 있다는 장점이 있다.	
  

Contenu connexe

Tendances

파이썬 데이터 검색
파이썬 데이터 검색파이썬 데이터 검색
파이썬 데이터 검색Yong Joon Moon
 
파이썬 Descriptor이해하기 20160403
파이썬 Descriptor이해하기 20160403파이썬 Descriptor이해하기 20160403
파이썬 Descriptor이해하기 20160403Yong Joon Moon
 
파이썬 Special method 이해하기
파이썬 Special method 이해하기파이썬 Special method 이해하기
파이썬 Special method 이해하기Yong Joon Moon
 
파이썬 Xml 이해하기
파이썬 Xml 이해하기파이썬 Xml 이해하기
파이썬 Xml 이해하기Yong Joon Moon
 
파이썬 플라스크 이해하기
파이썬 플라스크 이해하기 파이썬 플라스크 이해하기
파이썬 플라스크 이해하기 Yong Joon Moon
 
파이썬 iterator generator 이해하기
파이썬 iterator generator 이해하기파이썬 iterator generator 이해하기
파이썬 iterator generator 이해하기Yong Joon Moon
 
파이썬 언어 기초
파이썬 언어 기초파이썬 언어 기초
파이썬 언어 기초beom kyun choi
 
파이썬 파일처리 이해하기
파이썬 파일처리 이해하기파이썬 파일처리 이해하기
파이썬 파일처리 이해하기Yong Joon Moon
 
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...탑크리에듀(구로디지털단지역3번출구 2분거리)
 
파이썬 xml 이해하기
파이썬 xml 이해하기파이썬 xml 이해하기
파이썬 xml 이해하기Yong Joon Moon
 
회사에서 써보는 SQLAlchemy
회사에서 써보는 SQLAlchemy회사에서 써보는 SQLAlchemy
회사에서 써보는 SQLAlchemyJc Kim
 
Android Programming
Android ProgrammingAndroid Programming
Android ProgrammingJake Yoon
 
JavaScript Patterns - Chapter 3. Literals and Constructors
JavaScript Patterns - Chapter 3. Literals and ConstructorsJavaScript Patterns - Chapter 3. Literals and Constructors
JavaScript Patterns - Chapter 3. Literals and ConstructorsHyuncheol Jeon
 
Javascript 객체생성패턴
Javascript 객체생성패턴Javascript 객체생성패턴
Javascript 객체생성패턴KIM HEE JAE
 

Tendances (20)

파이썬 데이터 검색
파이썬 데이터 검색파이썬 데이터 검색
파이썬 데이터 검색
 
파이썬 심화
파이썬 심화파이썬 심화
파이썬 심화
 
파이썬 Descriptor이해하기 20160403
파이썬 Descriptor이해하기 20160403파이썬 Descriptor이해하기 20160403
파이썬 Descriptor이해하기 20160403
 
파이썬 Special method 이해하기
파이썬 Special method 이해하기파이썬 Special method 이해하기
파이썬 Special method 이해하기
 
파이썬 Xml 이해하기
파이썬 Xml 이해하기파이썬 Xml 이해하기
파이썬 Xml 이해하기
 
파이썬 플라스크 이해하기
파이썬 플라스크 이해하기 파이썬 플라스크 이해하기
파이썬 플라스크 이해하기
 
Xe hack
Xe hackXe hack
Xe hack
 
Hacosa j query 4th
Hacosa j query 4thHacosa j query 4th
Hacosa j query 4th
 
파이썬 iterator generator 이해하기
파이썬 iterator generator 이해하기파이썬 iterator generator 이해하기
파이썬 iterator generator 이해하기
 
파이썬 언어 기초
파이썬 언어 기초파이썬 언어 기초
파이썬 언어 기초
 
파이썬 파일처리 이해하기
파이썬 파일처리 이해하기파이썬 파일처리 이해하기
파이썬 파일처리 이해하기
 
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
(WPF교육)ListBox와 Linq 쿼리를 이용한 간단한 데이터바인딩, 새창 띄우기, 이벤트 및 델리게이트를 통한 메인윈도우의 ListB...
 
Hacosa j query 11th
Hacosa j query 11thHacosa j query 11th
Hacosa j query 11th
 
파이썬 xml 이해하기
파이썬 xml 이해하기파이썬 xml 이해하기
파이썬 xml 이해하기
 
Hacosa j query 3th
Hacosa j query 3thHacosa j query 3th
Hacosa j query 3th
 
회사에서 써보는 SQLAlchemy
회사에서 써보는 SQLAlchemy회사에서 써보는 SQLAlchemy
회사에서 써보는 SQLAlchemy
 
Android Programming
Android ProgrammingAndroid Programming
Android Programming
 
JavaScript Patterns - Chapter 3. Literals and Constructors
JavaScript Patterns - Chapter 3. Literals and ConstructorsJavaScript Patterns - Chapter 3. Literals and Constructors
JavaScript Patterns - Chapter 3. Literals and Constructors
 
Javascript 객체생성패턴
Javascript 객체생성패턴Javascript 객체생성패턴
Javascript 객체생성패턴
 
6.테이블만들기
6.테이블만들기6.테이블만들기
6.테이블만들기
 

En vedette

Typecurious: A Typography Crash Course
Typecurious: A Typography Crash CourseTypecurious: A Typography Crash Course
Typecurious: A Typography Crash CourseDigital Surgeons
 
Amazon web service simple diagram overview
Amazon web service simple diagram overviewAmazon web service simple diagram overview
Amazon web service simple diagram overviewJuyeon Yu
 
머신러닝 시그 세미나_(deep learning for visual recognition)
머신러닝 시그 세미나_(deep learning for visual recognition)머신러닝 시그 세미나_(deep learning for visual recognition)
머신러닝 시그 세미나_(deep learning for visual recognition)Yonghoon Kwon
 
리코더티쳐 사업제안서 - Recorder Teacher Business Plan
리코더티쳐 사업제안서 - Recorder Teacher Business Plan리코더티쳐 사업제안서 - Recorder Teacher Business Plan
리코더티쳐 사업제안서 - Recorder Teacher Business Plan봉조 김
 
Shopping Link
Shopping LinkShopping Link
Shopping LinkPayGate
 
데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은ETRIBE_STG
 
Alipay 이용 방법
Alipay 이용 방법Alipay 이용 방법
Alipay 이용 방법PayGate
 
Midterm presentation revised2
Midterm presentation revised2Midterm presentation revised2
Midterm presentation revised2예인 조
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with DataSeth Familian
 
금액인증(2010.01)
금액인증(2010.01)금액인증(2010.01)
금액인증(2010.01)PayGate
 
Design pattern study 4 factory pattern _ by dragor0123
Design pattern study 4 factory pattern _ by dragor0123Design pattern study 4 factory pattern _ by dragor0123
Design pattern study 4 factory pattern _ by dragor0123dragor0123
 
Pubcon 2015 – Mobile and App Store Optimization – Dave Lloyd
Pubcon 2015 – Mobile and App Store Optimization – Dave LloydPubcon 2015 – Mobile and App Store Optimization – Dave Lloyd
Pubcon 2015 – Mobile and App Store Optimization – Dave LloydDave Lloyd
 
OVNC 2015-차세대 데이터센터 아키텍처, 애플리케이션 중심 인프라스트럭처 ACI
OVNC 2015-차세대 데이터센터 아키텍처, 애플리케이션 중심 인프라스트럭처 ACIOVNC 2015-차세대 데이터센터 아키텍처, 애플리케이션 중심 인프라스트럭처 ACI
OVNC 2015-차세대 데이터센터 아키텍처, 애플리케이션 중심 인프라스트럭처 ACINAIM Networks, Inc.
 
카카오톡, 왓츠앱 비교
카카오톡, 왓츠앱 비교카카오톡, 왓츠앱 비교
카카오톡, 왓츠앱 비교준호 장
 
The future of retail - 2014 - Congresso Abrasce
The future of retail - 2014 - Congresso AbrasceThe future of retail - 2014 - Congresso Abrasce
The future of retail - 2014 - Congresso AbrasceJornal do Commercio
 
copycat 어플 비교
copycat 어플 비교copycat 어플 비교
copycat 어플 비교Seonbi Park
 
2015 07 31_yashin_project
2015 07 31_yashin_project2015 07 31_yashin_project
2015 07 31_yashin_projectDaegwon Kim
 
아꿈사 발표 Node JS 프로그래밍 8장
아꿈사 발표 Node JS 프로그래밍 8장아꿈사 발표 Node JS 프로그래밍 8장
아꿈사 발표 Node JS 프로그래밍 8장Woo Yeong Choi
 

En vedette (20)

Typecurious: A Typography Crash Course
Typecurious: A Typography Crash CourseTypecurious: A Typography Crash Course
Typecurious: A Typography Crash Course
 
Amazon web service simple diagram overview
Amazon web service simple diagram overviewAmazon web service simple diagram overview
Amazon web service simple diagram overview
 
머신러닝 시그 세미나_(deep learning for visual recognition)
머신러닝 시그 세미나_(deep learning for visual recognition)머신러닝 시그 세미나_(deep learning for visual recognition)
머신러닝 시그 세미나_(deep learning for visual recognition)
 
리코더티쳐 사업제안서 - Recorder Teacher Business Plan
리코더티쳐 사업제안서 - Recorder Teacher Business Plan리코더티쳐 사업제안서 - Recorder Teacher Business Plan
리코더티쳐 사업제안서 - Recorder Teacher Business Plan
 
Shopping Link
Shopping LinkShopping Link
Shopping Link
 
데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은데이터베이스 시스템 chapter1_STG박하은
데이터베이스 시스템 chapter1_STG박하은
 
Alipay 이용 방법
Alipay 이용 방법Alipay 이용 방법
Alipay 이용 방법
 
Midterm presentation revised2
Midterm presentation revised2Midterm presentation revised2
Midterm presentation revised2
 
Visual Design with Data
Visual Design with DataVisual Design with Data
Visual Design with Data
 
금액인증(2010.01)
금액인증(2010.01)금액인증(2010.01)
금액인증(2010.01)
 
Design pattern study 4 factory pattern _ by dragor0123
Design pattern study 4 factory pattern _ by dragor0123Design pattern study 4 factory pattern _ by dragor0123
Design pattern study 4 factory pattern _ by dragor0123
 
Pubcon 2015 – Mobile and App Store Optimization – Dave Lloyd
Pubcon 2015 – Mobile and App Store Optimization – Dave LloydPubcon 2015 – Mobile and App Store Optimization – Dave Lloyd
Pubcon 2015 – Mobile and App Store Optimization – Dave Lloyd
 
OVNC 2015-차세대 데이터센터 아키텍처, 애플리케이션 중심 인프라스트럭처 ACI
OVNC 2015-차세대 데이터센터 아키텍처, 애플리케이션 중심 인프라스트럭처 ACIOVNC 2015-차세대 데이터센터 아키텍처, 애플리케이션 중심 인프라스트럭처 ACI
OVNC 2015-차세대 데이터센터 아키텍처, 애플리케이션 중심 인프라스트럭처 ACI
 
카카오톡, 왓츠앱 비교
카카오톡, 왓츠앱 비교카카오톡, 왓츠앱 비교
카카오톡, 왓츠앱 비교
 
PDC
PDCPDC
PDC
 
The future of retail - 2014 - Congresso Abrasce
The future of retail - 2014 - Congresso AbrasceThe future of retail - 2014 - Congresso Abrasce
The future of retail - 2014 - Congresso Abrasce
 
최종Google3
최종Google3최종Google3
최종Google3
 
copycat 어플 비교
copycat 어플 비교copycat 어플 비교
copycat 어플 비교
 
2015 07 31_yashin_project
2015 07 31_yashin_project2015 07 31_yashin_project
2015 07 31_yashin_project
 
아꿈사 발표 Node JS 프로그래밍 8장
아꿈사 발표 Node JS 프로그래밍 8장아꿈사 발표 Node JS 프로그래밍 8장
아꿈사 발표 Node JS 프로그래밍 8장
 

Similaire à [JavaScript Library] - Simple jQuery

파이썬 크롤링 모듈
파이썬 크롤링 모듈파이썬 크롤링 모듈
파이썬 크롤링 모듈Yong Joon Moon
 
Jquery javascript_ed10
Jquery javascript_ed10Jquery javascript_ed10
Jquery javascript_ed10hungrok
 
Javascript - Function
Javascript - FunctionJavascript - Function
Javascript - Functionwonmin lee
 
파이썬 함수 이해하기
파이썬 함수 이해하기 파이썬 함수 이해하기
파이썬 함수 이해하기 Yong Joon Moon
 
파이썬 반복자 생성자 이해하기
파이썬 반복자 생성자 이해하기파이썬 반복자 생성자 이해하기
파이썬 반복자 생성자 이해하기Yong Joon Moon
 
Java script의 이해
Java script의 이해Java script의 이해
Java script의 이해seungkyu park
 
Javascript 교육자료 pdf
Javascript 교육자료 pdfJavascript 교육자료 pdf
Javascript 교육자료 pdfHyosang Hong
 
외계어 스터디 3/5 function and object
외계어 스터디 3/5   function and object외계어 스터디 3/5   function and object
외계어 스터디 3/5 function and object민태 김
 
파이썬+주요+용어+정리 20160304
파이썬+주요+용어+정리 20160304파이썬+주요+용어+정리 20160304
파이썬+주요+용어+정리 20160304Yong Joon Moon
 
파이썬+함수이해하기 20160229
파이썬+함수이해하기 20160229파이썬+함수이해하기 20160229
파이썬+함수이해하기 20160229Yong Joon Moon
 
헷갈리는 자바스크립트 정리
헷갈리는 자바스크립트 정리헷갈리는 자바스크립트 정리
헷갈리는 자바스크립트 정리은숙 이
 
Collection framework
Collection frameworkCollection framework
Collection frameworkssuser34b989
 
Start IoT with JavaScript - 6.함수
Start IoT with JavaScript - 6.함수Start IoT with JavaScript - 6.함수
Start IoT with JavaScript - 6.함수Park Jonggun
 
9 object class
9 object class9 object class
9 object class웅식 전
 
Xe 구조에 대한 이해
Xe 구조에 대한 이해Xe 구조에 대한 이해
Xe 구조에 대한 이해Dong Hyun Kim
 
Ji 개발 리뷰 (신림프로그래머)
Ji 개발 리뷰 (신림프로그래머)Ji 개발 리뷰 (신림프로그래머)
Ji 개발 리뷰 (신림프로그래머)beom kyun choi
 
Javascript 실행 가능한 코드(Executable Code)와 실행 콘텍스트(Execution Context), Lexical En...
Javascript 실행 가능한 코드(Executable Code)와 실행 콘텍스트(Execution Context), Lexical En...Javascript 실행 가능한 코드(Executable Code)와 실행 콘텍스트(Execution Context), Lexical En...
Javascript 실행 가능한 코드(Executable Code)와 실행 콘텍스트(Execution Context), Lexical En...Young-Beom Rhee
 

Similaire à [JavaScript Library] - Simple jQuery (20)

파이썬 크롤링 모듈
파이썬 크롤링 모듈파이썬 크롤링 모듈
파이썬 크롤링 모듈
 
Jquery javascript_ed10
Jquery javascript_ed10Jquery javascript_ed10
Jquery javascript_ed10
 
Javascript - Function
Javascript - FunctionJavascript - Function
Javascript - Function
 
파이썬 함수 이해하기
파이썬 함수 이해하기 파이썬 함수 이해하기
파이썬 함수 이해하기
 
Java script
Java scriptJava script
Java script
 
파이썬 반복자 생성자 이해하기
파이썬 반복자 생성자 이해하기파이썬 반복자 생성자 이해하기
파이썬 반복자 생성자 이해하기
 
Java script의 이해
Java script의 이해Java script의 이해
Java script의 이해
 
Javascript 교육자료 pdf
Javascript 교육자료 pdfJavascript 교육자료 pdf
Javascript 교육자료 pdf
 
외계어 스터디 3/5 function and object
외계어 스터디 3/5   function and object외계어 스터디 3/5   function and object
외계어 스터디 3/5 function and object
 
파이썬+주요+용어+정리 20160304
파이썬+주요+용어+정리 20160304파이썬+주요+용어+정리 20160304
파이썬+주요+용어+정리 20160304
 
파이썬+함수이해하기 20160229
파이썬+함수이해하기 20160229파이썬+함수이해하기 20160229
파이썬+함수이해하기 20160229
 
헷갈리는 자바스크립트 정리
헷갈리는 자바스크립트 정리헷갈리는 자바스크립트 정리
헷갈리는 자바스크립트 정리
 
Collection framework
Collection frameworkCollection framework
Collection framework
 
Eclipse RCP 1/2
Eclipse RCP 1/2Eclipse RCP 1/2
Eclipse RCP 1/2
 
Start IoT with JavaScript - 6.함수
Start IoT with JavaScript - 6.함수Start IoT with JavaScript - 6.함수
Start IoT with JavaScript - 6.함수
 
9 object class
9 object class9 object class
9 object class
 
Xe 구조에 대한 이해
Xe 구조에 대한 이해Xe 구조에 대한 이해
Xe 구조에 대한 이해
 
Ji 개발 리뷰 (신림프로그래머)
Ji 개발 리뷰 (신림프로그래머)Ji 개발 리뷰 (신림프로그래머)
Ji 개발 리뷰 (신림프로그래머)
 
Javascript 실행 가능한 코드(Executable Code)와 실행 콘텍스트(Execution Context), Lexical En...
Javascript 실행 가능한 코드(Executable Code)와 실행 콘텍스트(Execution Context), Lexical En...Javascript 실행 가능한 코드(Executable Code)와 실행 콘텍스트(Execution Context), Lexical En...
Javascript 실행 가능한 코드(Executable Code)와 실행 콘텍스트(Execution Context), Lexical En...
 
Java JPA
Java JPAJava JPA
Java JPA
 

[JavaScript Library] - Simple jQuery

  • 1. Code  Review   Core.  DOM  Manipula0on  and  Event  
  • 2. core/sel.js   jSelector  ||  __   •  셀렉터 구문이 그룹인지 싱글인지 체크하여 별도 처리   •  셀렉터 구문은 “,” 유무로 체크   •  외부에서  “jSelector”  또는 “__”로 함수 호출     var  result  =  __(“#sel1,.sel2,…”);   console.log(result);  //  Array    
  • 3. core/sel.js   jSelectorNode   •  셀렉터 구문 타입에 따른 분기 처리   •  속성일 경우에는 내부적으로 “jParser”  함수를 호출     var  result  =  [    __(“selector”),  __(window),  …   ];   console.log(result);    
  • 4. core/sel.js   jParser   •  셀렉터 구문 타입이 속성일 경우 처리되는 함수   •  속성 이름과 값이 일치하는 모든 엘리먼트를 검색   •  하위 노드가 없을 때까지 재귀 호출     var  result  =  __(“[name=value]”);   console.log(result);    
  • 5. core/lib.js   jEventProxy   •  이벤트 발생시 등록된 리스너 함수의 매개변수로 전달되는 객 체의 크로스브라우징 처리를 위한 프록시 함수   •  “jHelper.fn.bind” 함수 내부에서 사용    
  • 6. core/lib.js   jHelper  ||  $$   •  내부적으로 셀렉터의 결과 값을 얻어오고,  DOM  관련 함수 (jQuery 확장 함수와 비슷한 개념)에 접근할 수 있는 객체를 생 성하여 리턴하는 Wrapping  함수     var  items  =  __(selector);   return  new  jHelper.fn.init(items);  
  • 7. core/lib.js   jHelper.fn   •  DOM 생성, 변경, 이벤트 등의 기능을 제공하는 함수들을 포함 하며 관련 함수를 외부에서 추가할 수 있는 객체   •  “jHelper.fn.custom  =  func<on()  {  }”  형태로 외부에서 구현 가능       jHelper.fn  =  jHelper.prototype  =  {    constructor:  jHelper,      init:  funcJon()  {  …  },    …   };  
  • 8. core/lib.js   jHelper.fn.init   •  “jHelper.fn.init”의 프로토타입을 “jHelper.fn”으로 할당하였으므 로 “new”  키워드를 통해 생성된 객체는 “jHelper.fn”  객체에 정 의된 모든 맴버를 참조할 수 있음   var  jHelper  =  funcJon(selector)  {    var  items  =  __(selector);    return  new  jHelper.fn.init(items);   };   jHelper.fn  =  jHelper.prototype  =  {  …  };   jHelper.fn.init.prototype  =  jHelper.fn;  
  • 9. core/lib.js   Object  rela0ons     jHelper   jHelper.fn   Init   (Func0on)   (Object)   (Func0on)   __proto__   __proto__   __proto__   prototype   prototype   prototype   fn   constructor   init   …  
  • 10. Conclusion   셀렉터와 엘리먼트 목록을 처리하는 로직을 완전히 분리하여 구 현함으로써 상호 간의 독립성을 갖출 수 있다.     또한 jQuery의 객체 생성 모델을 기본 컨셉으로 정함으로써 보다 쉽게 기능을 확장할 수 있다는 장점이 있다.