jQuery.each() 메서드에 이어서, 이번 글에서는 jQuery().each() 메서드에 대해서 알아보자.
이 함수는 내부적으로 단순히 jQuery.each() 메서드를 호출하기 때문에 별도의 설명없이 바로 코드를 살펴보자.
$().each() 메서드 // Execute a callback for every element in the matched set. // (You can seed the arguments with an array of args, but this is // only used internally.) each: function( callback, args ) { return jQuery.each( this, callback, args ); },
우선 간단히 jQuery.each() 기능을 다시 확인해보자.
jQuery.each( object, callback, args)
– object : 실행을 반복할 배열이나 객체
– callback : 모든 객체에서 호출될 함수
– args : callback 함수로 넘길 인자
설명 : object로 넘어온 배열이나 객체의 각 원소(프로퍼티)들에 대해 차례로 루프를 돌면서 콜백 함수를 실행한다.
$().each() 메서드의 기능은 jQuery.each() 메서드에서 첫번째 인자 object에 ‘this’ 값을 넘기는 것에 불과하다.
그렇다면 여기서 this는 무엇을 가리키나??
당연히 each() 메서드를 호출하는 jQuery 객체이다. 또한 jQuery 객체는 ‘유사 배열 객체’로서, 객체이지만 배열처럼 length 프로퍼티를 가지고 있으며 0, 1, 2 등의 인덱스를 필드를 사용해서 자신이 매핑하고 있는 DOM 객체를 링크한다.
정리하면, $().each() 메서드의 역할은 이 메서드를 호출한 jQuery 객체에 매핑된 DOM 객체들에 대해 루프돌면서 콜백 함수를 실행시키는 역할을 한다.