본문 바로가기
jQuery/jQuery메소드

jquery end() 메소드

by 샷타이거 2010. 2. 18.

jquery end() 메소드

원문은 여기에서 볼 수있다http://api.jquery.com/end/

.end()
end() 메소드는 현재의 엘리먼트 바로 앞의 엘리먼트를 지칭한다. 다음예제를보자

Hm..

this is the test

$(document).ready(function() {
			alert($('p').filter('#test').end().text());
		});

스크립트 소스에서 접근순서를보자

  1. $('p') : p엘리먼트에 접근
  2. .filter('#test') : #test라는 아이디에 접근
  3. .end() : 한차례앞의 것에 접근한다 따라서 p에 접근하게 된다
  4. alert($('p').filter('#test').end().text()); 소스는 p에리먼트안의 텍스트 Hm..this is the test를 출력시킨다.

체이닝(chaining)

end 함수가 유용한 것은 여러번사용하여 어떤 엘리먼트를 재지정 할 필요없다는 점이다. 다음예제를보자

  
$('form ')
    .filter('.required').text( )
     .end().end()
    .filter('.conditional').text();

$('form ')에 대해서 end 함수를 사용하여 접근 하는 방법을 짜는 소스를 줄여주고있다. 위의 것이 의미하는 바는 다음과 같다.

  
$('form ')
    .filter('.required').text( );
$('form ')    
    .filter('.conditional').text();

아래 소스를 보면은 접근하기 위해 $('form ')를 두번이나 사용했다.end를 사용하면 이럴 필요없다. 또 여러번 사용가능하기에 바로 앞의것만 아닌 맨 앞의것도 선택할 수 있는것이다. 따라서 .end().end()$('form ') 를 지칭한다.

이런 end함수의 기능을 체이닝(chaining)이라하며 jQuery의 장점중 하나이다

댓글