본문으로 바로가기

jQuery $()의 의미

category jQuery 2018. 7. 15. 19:29
336x280(권장), 300x250(권장), 250x250, 200x200 크기의 광고 코드만 넣을 수 있습니다.

jQuery $()의 의미


$()가 의미하는 것은 무엇이라고 물어보면 처음에 jQuery다 라고 대답하합니다. 어떤 의미에서는 맞는 말일 수도 있지만 정확한 의미는 그냥 이름이 $인 함수 그 자체라고 할 수 있습니다. 해석하자면 $()는 $함수를 호출한 것이라고 할 수 있습니다. jQuery 라이브러리 내부를 살펴보면 아래와 같이 작성돼어 있는 것을 알 수 있습니다.

1
window.jQuery = window.$ = jQuery;



따라서 위의 코드에 따라 아래 두 코드는 동일한 코드입니다.

1
2
$('div').css('border''4px solid #f00');
jQuery('div').css('border''4px solid #f00');



$('div') 의미는 'div'를 매개변수 값으로 $() 함수를 호출한 것입니다.



$()함수의 리턴값


Javascript에서 점(.)은 특정 객체에서 제공하는 기능에 접근할 때 사용하는 접근 연산자입니다. 

1
$('div').css('border''4px solid #f00');



.css()는 접근 연산자를 통해 특정 객체해서 제공하는 기능 중 하나입니다. 즉 $('div') 함수의 리턴값인 특정 객체가 바로 jQuery객체라는 것이다. 위의 코드를 좀더 쉽게 정리하자면 아래와 같습니다.

1
2
3
$divs = $('div');
$divs.css('border''4px solid #f00');



$()가 jQuery 객체를 리턴한다는 사실은 jQuery 레퍼런스를 보면 알 수 있습니다. http://api.jquery.com/jQuery에 들어가보면 오른쪽 상단에 return으로 jQuery 객체를 해주는 것을 알 수 있습니다.



jQuery 정체


jQuery 객체에 대해 좀 더 자세히 알아보자면 앞에서도 언급한 것처럼 DOM을 쉽게 다룰 수 있게 도와주는 기능들로 가득 찬 라이브러리입니다. jQuery는 자바스크립트의 prototype이라는 클래스 제작 문법으로 만들어졌으며, jQuery를 prototype으로 간단하게 표현하면 아래와 같습니다.

1
2
3
4
5
6
7
function jQuery() {
 
}
 
jQuery.prototype.css = function(){}
jQuery.prototype.on = function(){}
jQuery.prototype.click = function(){}



클래스를 사용하기 위해서는 인스턴스를 생성해야 하지만, 우리는 jQuery를 사용할 때 jQuery 인스턴스를 생성한 적이 없습니다, 그럼에도 불구하고 사용할 수 있는 건 무슨 이유일까, 바로 $()에서 jQuery 인스턴스를 여러분 대신 만들어서 제공해주기 때문입니다.

1
2
3
4
function$() {
 
    return new jQuery();
}



'jQuery' 카테고리의 다른 글

jQuery 선택자 다루기  (0) 2018.07.17
jQuery 선택자(자식, 부모, 형제)  (2) 2018.07.17
jQuery 선택자(ID, CLASS, TAG, 속성)  (0) 2018.07.16
$(document).ready() VS window.onload()  (0) 2018.07.16
jQuery ready() 메서드 사용법  (0) 2018.07.15