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

[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로 조작함.)

 


분류 제목
AJAX JQ - $.getScript() 메서드 ★ - AJAX HTTP GET 요청을 사용하여 서버에서 JS 가져…
AJAX JQ - $.param() 메서드 - 배열/객체의 직렬화 된 표현 생성 (※ AJAX 요청에 대한 URL 쿼…
AJAX JQ - $.post() 메서드 ★ - AJAX HTTP POST 요청을 사용하여 서버에서 데이터를 로드 (…
AJAX JQ - ajaxComplete() 메서드 - AJAX 요청 완료 시, 실행할 함수 지정 (= ajaxCom…
AJAX JQ - ajaxError() 메서드 - AJAX 요청 실패 시 실행할 함수 지정 (= ajaxError메서…
AJAX JQ - ajaxSend() 메서드 - AJAX 요청을 보내기 전에 실행할 함수 지정 (= ajaxSend메…
AJAX JQ - ajaxStart() 메서드 - 첫 번째 AJAX 요청이 시작될 때 실행할 함수 지정 (= ajax…
AJAX JQ - ajaxStop() 메서드 - 모든 AJAX 요청이 완료되었을 때 실행할 함수 지정 (= ajaxS…
AJAX JQ - ajaxSuccess() 메서드 - AJAX 요청이 성공적으로 완료될 때 실행할 함수 지정 (= a…
AJAX JQ - load() 메서드 - 서버에서 데이터를 로드하고 반환된 데이터를 선택요소에 저장 (= load메서…
AJAX JQ - serialize() 메서드 ★ = 전송 위해 폼 요소 집합을 직렬화 (= serialize메서드 …
AJAX JQ - serializeArray() 메서드 - 일련의 폼 요소를 이름과 값의 배열로 인코딩 (= seri…
Misc JQ - data() 메서드 ★★ - 선택요소에 데이터 첨부. / 선택요소의 데이터 반환. (= data메…
Misc JQ - get() 메서드 ★ - 선택자가 가리키는 DOM 요소 가져오기. (= get메서드 = 겟메서드)
Misc JQ - index() 메서드 ★★★ - 요소 색인번호 반환 (= 일치하는 요소 중에서 지정요소 검색 = i…
Misc JQ - $.noConflict() 메서드 - $ 변수에 대한 jQuery의 제어를 해제
Misc JQ - $.param() 메서드 - 배열/객체의 직렬화 된 표현 반환 (※ AJAX 요청에 대한 URL 쿼…
Misc JQ - removeData() 메서드 - 이전 저장데이터 제거
Misc JQ - size() 메서드 - 요소개수 (= size메서드 = 사이즈 메서드) ※ JQ3.0 폐기완료. 대…
Misc JQ - toArray() 메서드 ★ - 일치요소 배열반환 (= 선택자와 일치하는 모든 요소를 배열로 가져오…
13/15
목록
찾아주셔서 감사합니다. Since 2012