Pourquoi jQuery a-t-il des signes de dollar partout?

Je travaille sur un projet avec beaucoup de JQuery. Le JQuery a beaucoup de signes $ partout, par exemple

$(document).ready(function () {
        $('input[type=file]').wl_File({
            url: '/Admin/PolicyInventory/UploadDocuments',
            onFileError: function (error, fileobj) {
                $.msg('file is not allowed: ' + fileobj.name, {
                    header: error.msg + ' Error ',
                    live: 10000
                });
            }
        });
...

Ma question Est, Que signifie ce signe de dollar? Pourquoi est-il utilisé partout et comment puis-je le comprendre et l'interpréter? Cela me rappelle les jours effrayants où J'apprenais le programme à l'université et que je devais mettre des parenthèses partout sans savoir pourquoi je le faisais.

90
demandé sur Sachin Kainth 2012-05-28 19:53:36

7 réponses

$ est juste un raccourci pour jQuery. L'idée est que Tout est fait avec le seul symbole global (puisque les espaces de noms globaux sont ridiculement bondés), jQuery, mais vous pouvez utiliser $ (parce que c'est plus court) si vous le souhaitez:

// These are the same barring your using noConflict (more below)
var divs = $("div");       // Find all divs
var divs = jQuery("div");  // Also find all divs, because
console.log($ === jQuery); // "true"

Si vous ne souhaitez pas utiliser l'alias, vous n'avez pas à. Et si vous voulez que $ ne soit pas un alias pour jQuery, Vous pouvez utiliser noConflict et la bibliothèque restaurera $ à ce qu'elle était avant que jQuery ne le prenne en charge. (Utile si vous utilisez également Prototype ou MooTools.)

144
répondu T.J. Crowder 2015-01-11 11:07:32

C'est juste un caractère pratique, plus court à taper et plus facile à lire que "jQuery".

Il n'y a rien de spécial sauf qu'il n'est traditionnellement pas utilisé pour démarrer un nom de variable ou de fonction, ce qui réduit le risque de collision de nom.

11
répondu Denys Séguret 2012-05-28 15:59:36

$ signe est un alias pour jQuery. Une version courte de jQuery, un mécanisme moins d'écriture.

Juste pour un exemple: (dans jQuery c'est plus compliqué)

var yourFunction = function() {
    alert('a function');
}

window.Myf = yourFunction;

Maintenant, vous pouvez appeler yourFunction comme:

Myf(); // definitely a short syntax
9
répondu thecodeparadox 2017-11-23 13:40:54

Inscriptibilité et performances


Lorsque nous travaillons sur une bibliothèque ou un langage de programmation, nous devrions faire attention à certaines règles d'inscriptibilité. Grâce à jQuery, ils ont déjà implémenté beaucoup d'options. Vous pouvez utiliser $ ou vous pouvez utiliser jQuery, ou vous pouvez utiliser _

(function (_) {
    _("#wow").click()
})(jQuery);

Ou peut - être que vous pouvez faire des changements fantaisistes, les identifiants javascript sont unicode donc vous pouvez utiliser Ω

(function (Ω) {
    Ω("#wow").click()
})(jQuery);

, Mais l'idée principale derrière elle, en appuyant une fois sur le clavier est mieux que de taper jQuery


De l'autre côté, nous avons la performance... Je viens d'ouvrir aléatoirement mon projet et de rechercher $, j'ai utilisé 54 $ dans un seul fichier javascript.

$ est un octet.

jQuery est de 6 octets.

La différence est énorme 54 * 5 = 220 octets.

7
répondu Ahmet Can Güven 2016-02-23 16:22:57

En javascript, $ (un seul caractère dollar) est un nom de variable valide. Plusieurs frameworks, parmi lesquels jQuery, l'ont adopté comme synonyme d'un objet contenant les méthodes de commodité de niveau supérieur fournies par le framework.

5
répondu Confusion 2012-05-28 15:57:24

Google est votre ami: $ signe JQuery

Le signe Dollar est juste un alias pour JQuery.

jQuery(document).ready(function(){});

Ou

$(document).ready(function(){});
3
répondu Kashif 2012-05-28 15:55:02

$ sign est utilisé comme alias pour Jquery. au lieu d'utiliser jquery.cacher,jquery.montrer chaque où nous pouvons utiliser l'alias $ ($.cacher) Puisque nous utilisons ce mot beaucoup de fois. 'Jquery' ne sera pas un moyen pratique, nous utilisons donc l'alias $. Si nous voulons changer, nous pouvons le changer par noConflict méthode var échantillon=$.noConflict ()

1
répondu Lijo 2015-06-25 04:25:12