La bibliothèque JQuery a été créée en 2006 pour compenser la fonctionnalité Javascript manquante. Depuis lors, ce dernier a suffisamment avancé dans son développement pour que les développeurs puissent se passer de jQuery, dont le principal problème est la performance.

Sur Habré, il y avait plusieurs
articles avec des mesures objectives de "l'inhibition" de JQuery sur les requêtes de sélecteurs.
| 4 649 ms |
| 3,437 ms |
| 1,362 ms |
| 1,168 ms |
| 107 ms |
| 75 ms |
(exécuté dans un cycle de 10 000 fois)Il y a pas mal de bonnes descriptions d'analogues de fonctions jQuery sur Javascript-e pur sur le réseau - par exemple,
ici .
Mais la puissance même de jQuery réside dans la concision et la beauté de ses expressions. Il est même psychologiquement difficile de réécrire le code existant, en changeant l'élégant $ () en constructions multi-lignes.
Essayons de laisser le langage JQuery autant que possible, en le remplaçant [partiellement] lui-même. Pour ce faire, il suffit de redéfinir la fonction $ () ou de remplacer (ce qui est mieux) par la nôtre - que ce soit $ jqr (). Il retournera également un objet, mais déjà «natif» et non surchargé de fonctions jQuery dont nous n'avons pas besoin.
Exemple de code:
<html> <body> <p id="message"></p> </body> </html>
Code JQuery:
$("#message").html("Hello world!");
Modifications apportées à:
$jqr("#message").html("Hello world!");
Il est souhaitable d'analyser
sel dans le constructeur de classe afin d'utiliser plus efficacement querySelectorAll (), getElementsByClassName () et getElementById ().
Ainsi, nous ne pouvons implémenter dans la classe JQR que les fonctions dont nous avons besoin, sans aller au-delà du Javascript standard et sans trop toucher au code existant.
Il n'est même pas nécessaire de se débarrasser complètement de jQuery - une optimisation partielle donnera déjà un résultat.