В моем веб-приложении интранет существует таблица объектов, которая в настоящее время использует идентификационный тег для выбора предназначенной строки, выбор на уровне 5-10 выборов/секунда. Метод, в настоящее время используемый, может вызвать некоторое время несоответствий ко времени из-за асинхронной природы, и очень трудно синхронизировать его правильно.
Вопросом является выбор индексом (через тег eq в jQuery) быстрее, чем выбор идентификатором (через getElementByID)?
Я сделал некоторый тест, и он показал, что идентификатор немного быстрее, но я думал, что попрошу у сообщества подтверждения.
Мне кажется, что я не согласен с вашим выводом, что getElementByID будет быстрее, поскольку jquery построен поверх javascript, хотя я могу не знать чего-то о jquery, необходимого для ответа на этот вопрос.
Сводится к необработанному javascript, а не к слою поверх javascript, и javascript сам по себе всегда будет лидером в этом соревновании.
В jQuery нет ничего быстрее, чем getElementById
или любая другая встроенная функция селектора DOM. Каждый раз, когда вы вызываете $
, производительность снижается. Конечно, если ваш селектор jQuery такой же простой, как '#somediv', разница будет небольшой. Но если вы настраиваетесь на производительность и действительно хотите добиться максимальной производительности, не используйте jQuery.
Если вам абсолютно необходимы функции оболочки jQuery, вызовите $ (document.getElementById ('somediv'));
и присвойте результат переменной, которую можно использовать повторно.
Хотя, не видя вашего кода, трудно сказать, как вы могли бы его оптимизировать, или даже если jQuery является основным узким местом.