English | 简体中文 | 繁體中文 | Русский язык | Français | Español | Português | Deutsch | 日本語 | 한국어 | Italiano | بالعربية

jQuery의 eq()와 DOM의 element.[]의 차이점에 대해 간단히 설명

아래와 같이 표시됩니다:

<!DOCTYPE html>
<html lang="en">
<head>
  <meta charset="UTF-8>
  <title>Title</title>
</head>
<body>
  <a class="a">#1</a>
  <a class="a">#2</a>
  <a class="a">#3</a>
  <script src="js/jq.js"></script>
  <script>
    var a = $('.a') ;
    var b = $('.a').eq(1) ;
    var c = $('.a')[1);
    var d = $('.a').eq(1)[0];
    var f = $('.a')[0].eq(1);
  </script>
</body>
</html>

$('.a')  // 선택된3개의 a, 모두 jq 객체로 변환했습니다(jq의 속성, 메서드를 사용할 수 있습니다).

$('.a').eq(1) // 두 번째 a를 선택하고 jq 객체로 변환했습니다(jq 속성, 메서드를 사용할 수 있지만, DOM 속성 메서드를 사용할 수 없습니다).

$('.a')[1]  // 두 번째 a를 선택하고 DOM 객체로 변환했습니다(DOM 속성, 메서드를 사용할 수 있지만, jq 속성 메서드를 사용할 수 없습니다).

$('.a').eq(1)[0]  // 두 번째 a를 선택하고 모두 DOM 객체로 변환했습니다(DOM 속성, 메서드를 사용할 수 있지만, jq 속성 메서드를 사용할 수 없습니다).

-----이를 통해 jQuery가 JS를 또 한层级로 포장한 것을 볼 수 있습니다. jq 속성은 포장을 벗겨 DOM 속성을 호출할 수 있지만, DOM은 jq의 속성 메서드를 호출할 수 없습니다。

$('.a')[0].eq(1) // 에러,因为我对象无法使用jq方法,eq()是jq方法。

이제 저는 여러분께 소개한 jQuery의 eq()와 DOM의 element.[]의 차이점에 대한 간단한 논의를 모두 마쳤습니다. 많은 지지와 응원 부탁드립니다.cassert 교본~

추천해드립니다