Warum verwenden mehrere Javascript-Bibliotheken $ für die eine oder andere Verwendung?

8

Ich habe mehrere Javascript-Bibliotheken gesehen, die $ be jQuery, mootools, prototype usw. benutzen. Auch einige der Bücher von javascript empfehlen $ als Funktionsersetzung von document.getElementById. ist es nur eine zufällige Sache.

    
sushil bharwani 01.07.2010, 07:58
quelle

6 Antworten

11

Der Grund, warum $ als gültiger Variablenname in den ECMA-Spezifikationen eingeführt wurde, war, maschinengenerierten Code vom menschlichen geschriebenen Code zu unterscheiden.
Die meisten JS-Bibliotheken verwenden $, weil es sehr selten ist, dass Sie einige Ihrer Variablen $ benennen möchten und somit eine Kollision und ein versehentliches Überschreiben der Variablen vermeiden würden. (Jetzt aber, da jede Bibliothek $ verwendet, wenn Sie zwei Bibliotheken verwenden möchten, sind Sie in einer Suppe).

    
NM. 01.07.2010, 08:05
quelle
5

Ich kann nur annehmen, aber ich denke, es ist "sichtbarer" als ein einzelnes Zeichen oder der Unterstrich _ .

Oder anders gesagt: Es ist der kürzest mögliche Bezeichner, der aus der Masse herausragt.

    
Felix Kling 01.07.2010 08:04
quelle
1

Nicht völlig zufällig - viele Shell-Sprachen in Unix verwenden $ , um eine Variable zu bezeichnen, und dies war die Quelle dieser "Tradition".

    
Oded 01.07.2010 08:02
quelle
1

Regeln für die Benennung von Variablen:

  1. Das erste Zeichen muss ein sein Buchstabe oder Unterstrich (_) oder a Dollarzeichen ($).

  2. Die nachfolgenden Zeichen können sein     Buchstaben, Zahlen, Unterstriche oder     Dollarzeichen.

  3. Die Variable darf keine enthalten     eingebettete Leerzeichencharaktere.

  4. Der Variablenname darf nicht a sein reserviertes Wort.

Also als Antwort auf Ihre Frage wird es nur als Präfix verwendet, um zwischen der Bibliothek und anderen Variablen zu unterscheiden, die Sie verwenden könnten.

    
Tom Gullen 01.07.2010 08:02
quelle
1

Es ist ein gültiger Variablenname, der kurz ist und (theoretisch) nicht oft verwendet wird. Die Leute würden es nicht schätzen, xtremeFramework jedes Mal einzugeben, wenn sie es verwenden möchten oder es einen Konflikt mit ihrer Variablen i geben würde.

    
Casey Chu 01.07.2010 08:18
quelle
0

Ich denke, es ist nur, um es von den üblichen Variablennamen abheben.

    
jmhowwala 01.07.2010 08:10
quelle

Tags und Links