Я нашел это чрезвычайно интересным. Обратите внимание, что это НЕ КАНОНИЧЕСКИЙ ОТВЕТ
Это всего лишь набор данных из некоторых тестов, которые я провел по этой теме Скорее всего, я проведу дополнительные тесты, когда у меня останется несколько часов, чтобы правильно настроить чистую среду тестирования, но это все, что я успел сделать прямо сейчас.
Для моего теста я перешел на страницу, а затем запустил функцию ожидаемого () для 10 отдельных элементов, чтобы проверить их текст. Это был локальный хостинг, поэтому скорость интернета не сыграла роли. Я выполнил тест 5 раз с элементами, выбранными как $().$()
, а затем еще 5 как $('CSS CSS')
. Затем я повторил тест в режиме без головы, чтобы увидеть, получу ли я другие результаты.
$ (). $ () Нет времени без головы:
1) 16,062
2) 16,297
3) 15,029
4) 15,773
5) 16,699
Средний: 15,972
$ (). $ () Время без головы:
1) 14,705
2) 15,081
3) 15.806
4) 14,944
5) 14.997
Средний: 15.107
$ ('CSS CSS') Нет времени без головы:
1) 16,172
2) 15,556
3) 16.604
4) 16,706
5) 15,733
Средний: 16,154
$ (CSS CSS) Времена без головы:
1) 15,288
2) 15,136
3) 15,11
4) 15,152
5) 14.805
Средний: 15,098
Как и вы, я ожидал, что $().$()
будет быстрее, и хотя в моих тестах это было верно для не безголовых, ни в коей мере. Безголовые времена проходили в основном с одинаковой скоростью независимо от того, как вы делали селекторы. Единственный полезный вывод из этих данных заключается в том, что потенциальная разница в производительности в зависимости от селекторов достаточно мала, чтобы не иметь заметных различий, и ее необходимо будет протестировать в гораздо большем масштабе, чтобы, возможно, начать видеть значительно разные времена. Конечно, я хочу изучить кое-что еще, когда у меня будет достаточно свободного времени для настройки достаточно большого тестового примера.