1134 votes

Pourquoi une variable JavaScript commence-t-elle par un signe de dollar ?

Je vois assez souvent du JavaScript avec des variables qui commencent par un signe de dollar. Quand/pourquoi choisiriez-vous de préfixer une variable de cette manière ?

(Je ne parle pas de $('p.foo') que vous voyez dans jQuery et d'autres, mais des variables normales comme $name y $order )

22 votes

C'est probablement une habitude prise lors de la programmation en Perl. (edit : ou PHP)

8 votes

Certains langages l'exigent, comme PHP ou Perl. Je suppose que le développeur n'a pas oublié que ce n'est pas nécessaire en javascript.

3 votes

Ou ils ne voulaient pas se donner la peine d'abandonner cette habitude. C'est très probablement la bonne réponse, car de nombreux développeurs qui créent leur propre page Web le font en utilisant PHP et javascript.

0voto

Ryan A Points 1861

Bien que vous puissiez simplement l'utiliser pour préfixer vos identifiants, il est censé être utilisé pour le code généré, comme les jetons de remplacement dans un modèle, par exemple.

1 votes

C'était vrai il y a six ans, mais plus maintenant.

-1voto

Manish Jhawar Points 124

Angulaire est utilisé pour les propriétés générées par le cadre. Je suppose qu'ils suivent les indications (aujourd'hui disparues) fournies par l'ECMA-262 3.0.

-3voto

saurabh saluja Points 49

$ est utilisé pour DISTINGUER entre les variables communes et les variables jquery dans le cas de variables normales. Si vous passez une commande dans FLIPKART, si la commande est une variable qui vous montre la sortie de la chaîne de caractères, elle est nommée simplement "commande", mais si nous cliquons sur passer la commande, un objet est renvoyé et cet objet sera désigné par $, comme "$ordre", de sorte que le programmeur peut être en mesure de supprimer les variables javascript et les variables jquery dans le code entier.

-4voto

RussellW Points 116

Si vous voyez le signe dollar ($) ou le double signe dollar ($$), et que vous êtes curieux de savoir ce que cela signifie dans le cadre de Prototype, voici votre réponse :

$$('div');
// -> all DIVs in the document.  Same as document.getElementsByTagName('div')!

$$('#contents');
// -> same as $('contents'), only it returns an array anyway (even though IDs must be unique within a document).

$$('li.faux');
// -> all LI elements with class 'faux'

Source :
http://www.prototypejs.org/api/utility/dollar-dollar

5 votes

Le PO précise qu'il ne s'agit pas de cette forme du préfixe dollar.

-5voto

not-just-yeti Points 3280

C'est la raison pour laquelle j'utilise parfois des conventions de noms php avec des variables javascript : Quand je fais de la validation de saisie, je veux exécuter exactement les mêmes algorithmes côté client, et côté serveur. Je veux vraiment que les deux côtés du code soient aussi similaires que possible, pour simplifier la maintenance. L'utilisation du signe dollar dans les noms de variables facilite cette tâche.

(De plus, quelques fonctions d'aide judicieuses permettent de rendre le code similaire, par exemple en enveloppant les consultations de valeurs d'entrée, les versions non OO de strlen, substr, etc. Cela nécessite tout de même quelques ajustements manuels).

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X