• 회원가입
  • 로그인
  • 구글아이디로 로그인

[ETC] JQ - eq() vs. get() 메서드 차이

jQuery 경우, 기본적으로 '확장집합' 형태의 Array (배열) 반환.

예외적으로, get() 메서드처럼 DOM element 반환하는 경우 有.


eq() vs. get() 예제

 

<script src="http://code.jquery.com/jquery-latest.js"></script>


<ul>

    <li id='a'>A</li>

    <li id='b'>B</li>

</ul>

 

<script> 

// alert($("li").eq(0)); // [object Object]

// alert($("li").eq(0)[0]); // [object HTMLLIElement]

// alert($("li").get(0)); // [object HTMLLIElement]

// alert($("li")[0]); // [object HTMLLIElement]

 

// console.log($("li").eq(0)); // jQuery 객체 반환. jQuery로 조작. 아래 참고

// console.log($("li").eq(0)[0]); // DOM 반환. JS로 조작. 아래 참고

// console.log($("li").get(0)); // DOM 반환. JS로 조작. 아래 참고

// console.log($("li")[0]); // DOM 반환. JS로 조작. 아래 참고

 

$("li").eq(0).hide(); // 작동 O

// $("li").get(0).hide(); // 작동 X

</script>

 

결과보기


PS.

각 반환값 차이

console.log($("li").eq(0)); 경우, jQuery 확장집합 반환. (∴ jQuery 다른 메서드와 함께 사용 O).

 

jQuery.fn.init [li#a, prevObject: jQuery.fn.init(2), context: document]

0: li#a

context: document

length: 1

prevObject: jQuery.fn.init(2) [li#a, li#b, prevObject: jQuery.fn.init(1), context: document, selector: "li"]

__proto__: Object(0)

 


console.log($("li").eq(0)[0]); 경우, DOM element 반환. (∴ jQuery 다른 메서드와 함께 사용 X).

 

<li id='a'>A</li>

 


console.log($("li").get(0)); 경우, DOM element 반환. (∴ jQuery 다른 메서드와 함께 사용 X).

 

<li id='a'>A</li>

 


console.log($("li")[0]); 경우, DOM element 반환. (∴ jQuery 다른 메서드와 함께 사용 X).

 

<li id='a'>A</li> 

 

※ $("li").eq(0)[0] == $("li").get(0) == $("li")[0]  : 셋 모두 DOM 요소 반환.

※ DOM 요소로 반환하는 경우, jQuery 메서드로는 조작 불가. (즉, JS로 조작함.)

 


분류 제목
Traversing JQ - nextAll() 메서드 - 선택요소의 모든 다음 형제요소 반환. (= nextAll메서드 = 넥스…
Traversing JQ - nextUntil() 메서드 - 주어진 두 인수 사이의 모든 다음 형제요소 반환
Traversing JQ - not() 메서드 - 일치 안 하는 요소 선택 (= not메서드 = 낫메서드)
Traversing JQ - offsetParent() 메서드 - 최초로 position된 부모요소 반환 (= offsetPar…
Traversing JQ - parent() 메서드 - 선택요소의 직접 부모요소 반환 (= parent메서드 = 패런트 메서드)
Traversing JQ - parents() 메서드 - 선택요소 모든 조상요소 반환 (= parents메서드 = 패런츠 매서드…
Traversing JQ - parentsUntil() 메서드 - 지정요소 사이의 조상요소 반환 (= parentsUntil메서…
Traversing JQ - prev() 메서드 - 선택요소 이전 형제요소 반환 (= prev메서드 = 프리브메서드)
Traversing JQ - prevAll() 메서드 - 선택요소 이전의 모든 형제요소 반환 (= prevAll메서드 = 프리브…
Traversing JQ - prevUntil() 메서드 - 특정 범위 안의 이전 형제요소 반환. (= prevUntil메서드 …
Traversing JQ - siblings() 메서드 - 선택요소의 모든 형제요소 반환. (= siblings메서드 = 시블링…
Traversing JQ - slice() 메서드 - 특정 색인번호 범위 내로 요소 선택 범위 축소. (= slice메서드 = …
AJAX JQ - $.ajax() 메서드 ★ - 비동기식 AJAX 요청수행. (= ajax메서드 = 아작스메서드)
AJAX JQ - $.ajaxPrefilter() 메서드 - 아작스 옵션처리/기존옵션수정. (= ajaxPrefilt…
AJAX JQ - $.ajaxSetup() 메서드 ★ - 향후 AJAX 요청에 대한 기본값 설정. (= ajaxSet…
AJAX JQ - $.ajaxTransport() 메서드 - Ajax 데이터의 실제 전송을 처리하는 객체 생성. (=…
AJAX JQ - $.get() 메서드 ★ - AJAX HTTP GET방식으로 서버에서 데이터 로드 (= $.get메…
AJAX JQ - $.getJSON() ★ 메서드 - GET 방식으로 서버에서 JSON 데이터를 로드 (= getJS…
AJAX JQ - $.parseJSON() 메서드 - 폐기예고. JSON.parse()로 대체됨. JSON 문자열 …
AJAX JQ - $.getScript() 메서드 ★ - AJAX HTTP GET 요청을 사용하여 서버에서 JS 가져…
12/15
목록
찾아주셔서 감사합니다. Since 2012