JavaScript에서 "$"부호의 의미는 무엇입니까
다음 JavaScript 코드에는 달러 ( $
) 기호가 있습니다. 무슨 뜻이에요?
$(window).bind('load', function() {
$('img.protect').protectImage();
});
코드 스 니펫은 인기있는 JavaScript 라이브러리 중 하나 (jQuery, ProtoType, mooTools 등)의 메소드를 참조하는 것처럼 보입니다.
$
JavaScript에서 의 사용에 대한 신비는 없습니다 . $
단순히 유효한 JavaScript 식별자입니다.
자바 스크립트는 상부 및 하부 문자, 숫자 및 수 $
및 _
. 은 $
기계 생성 변수 (예 :)에 사용되었습니다 $0001
.
프로토 타입, jQuery 및 대부분의 자바 스크립트 라이브러리 $
는 기본 기본 객체 (또는 함수)로를 사용합니다. 그들 대부분은 그것을 $
사용하는 다른 라이브러리와 함께 사용할 수 있도록 포기하는 방법을 가지고 있습니다. 이 경우 jQuery
대신 을 사용 합니다 $
. 실제로 $
는 바로 가기입니다 jQuery
.
그것은 아마도 jQuery 코드 일 것입니다 (보다 정확하게는 jQuery 라이브러리를 사용하는 JavaScript).
는 $
대표 jQuery를 기능 , 실제로 속기의 별칭입니다 jQuery
. 대부분의 언어와 달리 $
기호는 예약되어 있지 않으며 변수 이름으로 사용될 수 있습니다. 일반적으로 선택기 (예 : DOM에서 찾은 요소 집합을 반환하는 함수)로 사용됩니다.
에서 다른 답변 :
작은 역사
본질적으로 특별한 것은 없습니다 $
. 다른 것과 마찬가지로 변수 이름입니다. 초기에는 사람들이 document.getElementById를 사용하여 코드를 작성했습니다. JavaScript는 대소 문자를 구분하므로을 쓰면서 실수하는 것이 일반적이었습니다 document.getElementById
. 내가 자본 'b'
을 해야합니까 'by'
? 해야 I 자본 'i'
의 Id?
당신은 드리프트를 얻을. 함수는 JavaScript에서 일류 시민이므로 항상 다음을 수행 할 수 있습니다.
var $ = document.getElementById; //freedom from document.getElementById!
프로토 타입 라이브러리가 도착하면 DOM 요소를 가져 오는 함수 이름을로 지정했습니다 '$'
. 거의 모든 JavaScript 라이브러리가이 아이디어를 복사했습니다. 프로토 타입은 $$
CSS 선택기를 사용하여 요소를 선택 하는 기능 도 도입했습니다 .
jQuery는 $
기능 을 조정 했지만 원하는 요소를 얻기 위해 모든 종류의 '선택기'를 허용 하도록 확장되었습니다. 이제 프로젝트에서 이미 프로토 타입을 사용하고 있고 jQuery를 포함시키려는 경우 '$'
프로토 타입의 구현 또는 jQuery의 구현을 참조 할 수있는 문제가 있습니다 . 따라서 jQuery에는 noConflict 옵션이있어 프로토 타입을 사용하는 프로젝트에 jQuery를 포함시키고 코드를 천천히 마이그레이션 할 수 있습니다. 나는 이것이 John의 훌륭한 움직임이라고 생각합니다! :)
이것은 jQuery 라이브러리 에서 사용되는 $()
축약 형 입니다.jQuery()
다른 모든 대답에서 알 수 있듯이; 거의 모든 것이 될 수 있지만 일반적으로 "JQuery"입니다.
그러나 ES6에서는 템플릿 "literal" 의 문자열 보간 연산자입니다 .
var s = "new" ; // you can put whatever you think appropriate here.
var s2 = `There are so many ${s} ideas these days !!` ; //back-ticks not quotes
console.log(s2) ;
결과:
요즘 너무 많은 새로운 아이디어가 있습니다!
위의 답변 외에도 $
Javascript에는 특별한 의미가 없으며 객체 이름 지정에 자유롭게 사용할 수 있습니다. 에서는 jQuery를 , 그것은 단순히 별칭으로서 사용된다 의 jQuery 객체와 jQuery를 () 함수. 그러나 $를 사용하는 다른 JS 라이브러리와 함께 사용하려는 경우에는 이름 충돌이 발생할 수 있습니다. 이러한 이유로 JQuery에는 메소드가 있습니다 jQuery.noConflict()
.
다음은 jQuery 문서의 샘플입니다 .
<script src="other_lib.js"></script>
<script src="jquery.js"></script>
<script>
$.noConflict();
// Code that uses other library's $ can follow here.
</script>
또는 이와 같이 사용할 수도 있습니다
(function ($) {
// Code in which we know exactly what the meaning of $ is
} (jQuery));
참조 : https://api.jquery.com/jquery.noconflict/
jQuery Core Object를 설명하는 jQuery 문서에서 :
많은 개발자들이 구별을 돕기 위해 jQuery 객체를 포함하는 변수 이름 앞에 $를 붙입니다. 이 방법에 대한 마술은 없습니다. 일부 사람들이 다른 변수에 포함 된 내용을 추적하는 데 도움이됩니다.
참고 URL : https://stackoverflow.com/questions/1150381/what-is-the-meaning-of-sign-in-javascript
'programing tip' 카테고리의 다른 글
파일을 변경하면 노드를 다시 시작하십시오. (0) | 2020.06.06 |
---|---|
Maven을 통한 Java 7 코드 컴파일 (0) | 2020.06.06 |
SQL에서 최소 두 값 얻기 (0) | 2020.06.06 |
C #의 목록에서 항목을 제거하는 방법은 무엇입니까? (0) | 2020.06.06 |
RGB 값 대신 16 진수 색상 값을 얻는 방법은 무엇입니까? (0) | 2020.06.06 |