디시인사이드 갤러리

갤러리 이슈박스, 최근방문 갤러리

갤러리 본문 영역

jQuery 잘쓰는 방법 1탄.txt

Kyle(220.244) 2013.02.05 23:23:54
조회 220 추천 0 댓글 3

1) selected element caching 하기

$(window).ready(function(){

   if(something is true){

     $('selector1').find('children').method1().method2();

   } else {

     $('selector1').find('children').method3().method4();

   }

});



가 있으면 selector 를 2판 + find를 2판 쓰면서 element 를 jQuery를 통해 찾을 필요가없다.


$(window).ready(function(){

    var myElement =  $('selector1').find('children');   //이런식으로 cache하고 reusing 하는게 효과적

   if(something is true){

     myElement.method1().method2();

   } else {

      myElement.method3().method4();

   }

});




2) 함수들은 preprocess 하기


jquery코드 보면 주로 $(window).ready(function(){}); 속안에 함수들 전부 넣잖아요. ㄴㄴ 그러면 오히려 더 느리고 코드 더러워지는 일임


$(window).ready(function(){

    var myElement =  $('selector1').find('children');   //이런식으로 cache하고 reusing 하는게 효과적

   function test(){

     if(something is true){

       myElement.method1().method2();

     } else {

        myElement.method3().method4();

     }

   }

   test();

});


가 있으면

var MYFUNCS = MYFUNCS || {};    //간단하게 object / properties 만들기

MYFUNCS.test = function(){   //OBJECT에 function 만들어서 scope 조절

     "use strict";       //ECMA 5 의 기능 strict mode 실행 hi -> private scope

     var hi = "wave from function body";

     if(something is true){

       myElement.method1().method2();

     } else {

        myElement.method3().method4();

     }

   }



$(window).ready(function(){

    var myElement =  $('selector1').find('children');   //이런식으로 cache하고 reusing 하는게 효과적

    MYFUNCS.test();

});


console.log(hi); //undefined error


JS 의 문제중에 하나는 function 과 var 의 global scope 에있음

여기서 당장 var i = "afas"; 를 하면 i 는 모든 상에서 afas가됨

strict mode를 사용하면 다른 각종 장점이 있지만 global scope를 차단하는점도 있음.



3) jQuery.each 혹은 for 를 쓰기전 꼭 써야될지 생각하기

예를 ul, li 구조가 있는데 이건 each를 써서 각각 li 를 선택해야될까요?

간단하게 css descendants, children selector를 잘쓰기만 해도 each, for 를 안쓸수가 있음


4) ㅁ모든게 jQuery만 좋은게 아님. underscore.js 같은 ruby 스타일 라이브러리또한 없는 기능 + 좋은기능을 들여올수있음
.
하지만 과거의 문제는 jQuery와 underscore를 둘다쓰면 똑같은 일을 하는 함수들이 두 라이브러리에 동존 했는데

이제 jQuery에서 custom으로 필요없는 기능을 뺴버림으로 두개다 효과적으로 사용할수있게됨


--- 1탄끝

추천 비추천

0

고정닉 0

0

댓글 영역

전체 댓글 0
본문 보기

하단 갤러리 리스트 영역

왼쪽 컨텐츠 영역

갤러리 리스트 영역

갤러리 리스트
번호 제목 글쓴이 작성일 조회 추천
설문 반응이 재밌어서 자꾸만 놀리고 싶은 리액션 좋은 스타는? 운영자 25/07/28 - -
AD 휴대폰 액세서리 세일 중임! 운영자 25/07/28 - -
347797 규식아 우리 집도 오늘 형광등 갈았어 [1] 에어로홍갤로그로 이동합니다. 13.03.03 46 0
347795 헬로월드찍기도힘드네 [9] DD(58.123) 13.03.03 184 0
347793 개발경력 5년이면 기획자에게 큰소리 칠 수 있음 [1] 경번갑(222.107) 13.03.03 140 0
347790 고등학교 프로그래밍 교재 내용은 왜 이따구냐? [2] 경번갑(222.107) 13.03.03 208 0
347789 이제곧 나리링갤로그로 이동합니다. 13.03.03 44 0
347787 프겔에도 일베충 꽤 있네 [1] Rei@디씨갤로그로 이동합니다. 13.03.03 127 0
347786 Lisp 조낸 안습이다. [4] 경번갑(222.107) 13.03.03 134 0
347785 취업하려면 므슨언어 파야할까 ㅎㅎ [5] Mayu갤로그로 이동합니다. 13.03.03 167 0
347784 님드라 int 4바이트 맞져? [10] 초딩천재플머(125.180) 13.03.03 443 0
347782 동적 할땅에 대해서 무러볼께연 [1] 초딩천재플머(125.180) 13.03.03 55 0
347781 집 형광등 나가서 사오는 사이 규식이(218.153) 13.03.03 35 0
347780 님들 씨랑 시쁠쁠 이랑 API / MFC 마스터했는데 이제 머해야하져? [7] 초딩천재플머(125.180) 13.03.03 204 1
347779 매주 40시간씩 40주동안 웹프로그래밍 독학할려고 하는데 [7] (223.62) 13.03.03 233 0
347776 형들 내가아직 안배워서 그런건지 몰라도 궁금한게 있는데 [7] 허접(119.205) 13.03.03 142 0
347775 게임플밍에서 객체지향은 쓰레기다 [8] 파이썬(61.43) 13.03.03 305 0
347774 아 곧 면접 보는데.. [1] dd(121.163) 13.03.03 132 0
347772 포인터 * 위치 어떤게 진리임? [12] ㅁㅁㅁㅁ(14.32) 13.03.03 225 0
347768 최적화란 [3] (125.177) 13.03.03 113 0
347767 mfc가 느린건 [2] (125.177) 13.03.03 122 0
347766 비주얼스튜디오 2005는 원래 구문오류 빨간줄 안생김? [1] ㅁㅁㅁㅁ(14.32) 13.03.03 133 0
347765 먼저 면접제의 해놓고 면접보러가면 '넌 안됨' [3] ㅁㄴㅇㄹ(122.37) 13.03.03 349 0
347764 MSSQL 로컬말고 새로만드는거 어떻게해? sibak(125.186) 13.03.03 43 0
347763 WebLoader, XMLParser 만들었당... 야 기분 좋다~ [6] 노0(218.48) 13.03.03 149 0
347762 헠헠... 나만의 C++ String 구현했닼.... ㅋㅋ [13] 노0(218.48) 13.03.03 227 0
347761 보통 소스 백업할때 어떤 확장자 씀???? [7] 물구나무(112.148) 13.03.03 115 0
347760 요새 티비는 테두리가 없더라.. ㅋㄱ(183.96) 13.03.03 84 0
347759 c# 지식인에서 본건데 이게 뭔말임 [4] 초보짱짱맨(175.125) 13.03.03 165 0
347758 자바스크립트로 다 하는 세상이 네.. [2] 1234(1.231) 13.03.03 185 0
347757 포트폴리오 어떤거 내면됨? [1] sibak(125.186) 13.03.03 105 0
347755 si 에 대한 고민... [1] ⚜백왕⚜갤로그로 이동합니다. 13.03.02 141 0
347754 c++ string에 메소드 추가하고 싶은데 어떻게 하죠? [5] 노0(218.48) 13.03.02 126 0
347753 형들 나 사이트 만들었어 [4] 가비다(203.250) 13.03.02 177 0
347752 가산 원룸 좋아? [3] ㅋㄱ(183.96) 13.03.02 163 0
347751 게임회사에 모집같은거 보면 [1] ㅁㄴㅇㄹ(115.92) 13.03.02 203 0
347750 어디서 쓸만한 3d xml모델 구할 수 있을까여.. [4] ㅁㄴㅇㄹ(115.92) 13.03.02 83 0
347749 자바형들 나 궁금한거 있는데 [4] 궁금(121.164) 13.03.02 109 0
347748 형들 피방에서 사양 많이 타는 작업하다 컴 폭발하면 어떻게 되여?? [3] asdf(221.138) 13.03.02 207 0
347745 가만보면 [5] c(175.208) 13.03.02 154 0
347742 매틀랩 고수님 있어요? fft 변환 잘 아시는분~ [3] 도서관(124.0) 13.03.02 313 0
347740 좇중고딩 이하에게 조언(부제 : 너희가 하지 말아야할짓) [1] 삐쭊이(110.70) 13.03.02 138 0
347739 프갤오빠들 사랑해~~♥ [2] DART(110.14) 13.03.02 125 1
347738 게임프로그래밍 공부한다고 해서 c++이랑 쉐이더 이런 공부만 해선 [3] 도레기(221.138) 13.03.02 186 0
347736 형들 IO 개념좀 물어볼게 [9] 해물(124.137) 13.03.02 196 0
347734 좆고딩들 유입요 [1] c(175.208) 13.03.02 75 0
347733 형들 maxscript는 어떻게 공부시ㅏㄱ하는게 좋아여 ㅁㅇㄴㄹ(221.138) 13.03.02 44 0
347732 자바 랑 윈도우 프로그래밍 차이점 알려줘 [3] 아자(121.164) 13.03.02 389 0
347731 자대 대학원 가는거 별론가? ㅇㅇ(210.94) 13.03.02 71 0
347730 자바 독립 os 좀 알려줘여 형들~ [2] 11(121.164) 13.03.02 82 0
347728 ┌열혈c 도전문제 풀다가... [3] 네로시엔갤로그로 이동합니다. 13.03.02 129 0
347727 동적 메모리 할당의 장점에 대해서 찾아봤는데... [9] 네로시엔갤로그로 이동합니다. 13.03.02 203 0
뉴스 '금쪽같은 내 스타' 엄정화X송승헌 & 장다아X이민재, 25년 세월 순삭? 비포애프터 로맨스 포스터 공개! 디시트렌드 07.30
갤러리 내부 검색
제목+내용게시물 정렬 옵션

오른쪽 컨텐츠 영역

실시간 베스트

1/8

뉴스

디시미디어

디시이슈

1/2