Um zu verstehen, was schneller ist, müssen Sie verstehen, wie der CSS-Parser funktioniert.
Der Selektor, den Sie übergeben, wird mit RegExp in erkennbare Teile aufgeteilt und dann Stück für Stück verarbeitet.
Einige Selektoren wie ID und TagName verwenden die native Implementierung des Browsers, die schneller ist. Während andere wie Klasse und Attribute separat programmiert werden und daher viel langsamer sind, müssen ausgewählte Elemente durchlaufen und jeder Klassenname überprüft werden.
Also ja, um deine Frage zu beantworten:
$ ('tag.class') ist schneller als nur $ ('. class'). Warum? Im ersten Fall verwendet jQuery die native Browser-Implementierung, um die Auswahl auf die Elemente zu filtern, die Sie benötigen. Erst dann wird die langsamere .class-Implementierung gestartet, die auf das herunterfiltert, wonach Sie gefragt haben.
Im zweiten Fall verwendet jQuery seine Methode, um jedes einzelne Element durch Abrufen der Klasse zu filtern.
Dies breitet sich weiter aus als jQuery, da alle Javascript-Bibliotheken darauf basieren. Die einzige andere Option ist die Verwendung von xPath, die derzeit jedoch nicht von allen Browsern unterstützt wird.