prosource

jQuery가 아니라면 Javascript에서 달러 기호는 무엇입니까?

probook 2023. 8. 21. 21:24
반응형

jQuery가 아니라면 Javascript에서 달러 기호는 무엇입니까?

저는 몇 년 전에 자바스크립트/jQuery 프로그래밍을 했고, 이제 막 다시 시작했습니다.그 당시에는 모든 jQuery 기능에 달러 기호가 사용되었으며, jQuery 라이브러리를 가져오지 않은 경우에는 달러 기호가 정의되지 않았습니다.

오늘 저는 파이어폭스를 자바스크립트 라이브러리가 없는 빈 html 파일로 시작했습니다. 그런데도 달러 기호는 무언가를 가리킵니다.Firefox 콘솔을 열고 '$'를 입력하면 다음 메시지가 표시됩니다."function()".

몇 년 전에 달러 표시가 할당되지 않은 것이 맞습니까, 아니면 제가 잘못 기억한 것입니까?

jQuery가 아니라면 달러 기호는 무엇입니까?

몇 년 전에 달러 표시가 할당되지 않은 것이 맞습니까, 아니면 제가 잘못 기억한 것입니까?

맞습니다. 그리고 여전히 사실입니다.

jQuery가 아니라면 달러 기호는 무엇입니까?

FirefoxChrome 구현$,$$기타 여러 명령을 도우미 명령으로 사용할 수 있습니다.둘 다 설정됩니다.$$로.document.querySelectorAll()세트$로.document.querySelector한다면window.$정의되지 않았습니다.

그래서 여러분이 보고 있는 것은 사실 표준 자바스크립트가 아니라 브라우저의 개발자 콘솔에 있는 도우미입니다.또한 jQuery가 아닙니다(jQuery를 사용하는 페이지에 없는 경우).하지만, 그것의 행동은 그것의 행동에 가깝습니다.jQuery그것에 관하여querySelector(단일 매치의 경우) 및querySelectorAll(복수 일치의 경우) jQuery 선택기와 거의 동일한 강도를 제공합니다.

밑줄과 마찬가지로 통역사에게는 아무런 의미가 없습니다.

ECMA스크립트 사양에서 다음을 수행합니다.

달러 기호($)와 밑줄(_)은 식별자의 모든 위치에서 허용됩니다.달러 기호는 기계적으로 생성된 코드에서만 사용됩니다.

당신은 자바스크립트 달러 사인($)도 확인할 수 있습니다 - 그것은 무엇을 위한 것입니까?

관례에 따라 달러 기호($), 밑줄(_), 심지어 일부 ASCII 문자도 JavaScript 식별자(출처:Ecma 스크립트 문서(7.6 식별자, ECMA-262, 3판) 달러 기호는 기계적으로 생성된 코드에서만 사용됩니다.즉, 프레임워크를 작성하지 않는 한 식별자 이름에 달러 기호($)를 사용하지 않습니다.다음은 식별자 이름의 모든 위치에서 사용할 수 있는 허용 문자 목록입니다.

IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart
IdentifierStart ::
UnicodeLetter
$
_
UnicodeEscapeSequence
IdentifierPart ::
IdentifierStart
UnicodeCombiningMark
UnicodeDigit
UnicodeConnectorPunctuation
UnicodeEscapeSequence

편집:-

실제로 달러 기호 기능은 거의 사실상의 지름길이 되었습니다.document.getElementById().

내 요점을 확인하려면 다음을 확인하십시오.

$(할인)

지정된 CSS 선택기와 일치하는 단일 요소를 반환합니다.이전 Firebug 버전에서는 document.getElementById와 동일했습니다.

Dollar sign($)이 할당되지 않았지만 일부 브라우저에서 특수 용도로 사용할 수 있는 기능을 추가했습니다.

Chrome처럼 Google Chrome을 하면 ㅠㅠㅠㅠㅠㅠㅠ$다음과 같이됩니다.

function $(selector, [startNode]) { [Command Line API] }

Google Chrome Developer Tool에 할당된 이 기능을 사용하면 디버깅이 더 쉬워집니다.

$('div')다음과 같은 것을 반환합니다.

e.fn.e.init[178]

그리고 모든 것을 포함합니다.divDOM 개체가 들어 있습니다.

요소를 하면 angular에 유형별로 수 .$scope

:$$그렇지 않습니다document.querySelectorAll왜냐하면 그 기능과 달리 그것은 a를 반환하지 않기 때문입니다.NodeList:

document.querySelectorAll("p") instanceof NodeList // true

$$("p") instanceof NodeList // false

Array.isArray($$("p")) // true

그렇게$$(selector)에 더 가깝습니다.Array.from(document.querySelectorAll(selector))이는 배열 방법이 다음과 같다는 것을 의미합니다.map▁just,냥그▁and▁friends리,▁not고.forEach할 때 할 수 있습니다.$$그것은 실제로 꽤 유용합니다.

, "MoTools", "MoTools는$의 으로서.document.getElementById.

그것은 그것이 확인합니다.$은 " 되며다기설정됩니다본로으음사용다니설됩▁then▁is정"로 설정됩니다.document.id.

무엇이든 될 수 있습니다.$는 와마가유변이수름다니입효한로지찬▁like와 이름입니다.dollar.

ECMA스크립트에서:

Identifier ::
IdentifierName but not ReservedWord

IdentifierName ::
IdentifierStart
IdentifierName IdentifierPart

IdentifierStart ::
UnicodeLetter
$
_ 
\ UnicodeEscapeSequence

그것이 무엇인지 그리고 그것이 어디에 정의되어 있는지를 볼 수 있는 가장 간단한 해결책은 아마도 다음과 같이 입력할 것입니다.$()그리고 이 선에 브레이크 포인트를 두는 것입니다.

언급URL : https://stackoverflow.com/questions/22244823/what-is-the-dollar-sign-in-javascript-if-not-jquery

반응형