getelementbyid по сравнению с индексом

В моем веб-приложении интранет существует таблица объектов, которая в настоящее время использует идентификационный тег для выбора предназначенной строки, выбор на уровне 5-10 выборов/секунда. Метод, в настоящее время используемый, может вызвать некоторое время несоответствий ко времени из-за асинхронной природы, и очень трудно синхронизировать его правильно.

Вопросом является выбор индексом (через тег eq в jQuery) быстрее, чем выбор идентификатором (через getElementByID)?

Я сделал некоторый тест, и он показал, что идентификатор немного быстрее, но я думал, что попрошу у сообщества подтверждения.

1
задан vener 3 August 2010 в 17:54
поделиться

2 ответа

Мне кажется, что я не согласен с вашим выводом, что getElementByID будет быстрее, поскольку jquery построен поверх javascript, хотя я могу не знать чего-то о jquery, необходимого для ответа на этот вопрос.

Сводится к необработанному javascript, а не к слою поверх javascript, и javascript сам по себе всегда будет лидером в этом соревновании.

1
ответ дан 2 September 2019 в 22:28
поделиться

В jQuery нет ничего быстрее, чем getElementById или любая другая встроенная функция селектора DOM. Каждый раз, когда вы вызываете $ , производительность снижается. Конечно, если ваш селектор jQuery такой же простой, как '#somediv', разница будет небольшой. Но если вы настраиваетесь на производительность и действительно хотите добиться максимальной производительности, не используйте jQuery.

Если вам абсолютно необходимы функции оболочки jQuery, вызовите $ (document.getElementById ('somediv')); и присвойте результат переменной, которую можно использовать повторно.

Хотя, не видя вашего кода, трудно сказать, как вы могли бы его оптимизировать, или даже если jQuery является основным узким местом.

1
ответ дан 2 September 2019 в 22:28
поделиться
Другие вопросы по тегам:

Похожие вопросы: