Всем доброго.
Есть проблема низкой производительности моих js на слабых машинах, иногда даже предложения браузера остановить работу скрипта на очень слабых машинах.
У меня есть массив из большого количества данных, на основе которого я генерю таблицу. Генерю "более или менее по умному":
var html;
html += '...' для каждой строки,
потом оборачиваю всё это в один элемент
и делаю $().append(html);
Но когда строк много, то всё равно на слабых машинах наблюдаются проблемы. Начал делать профайлинг.
Многого не понял
Вот что показывают профайлеры:
Firebug:
Chrome:
То, что показывает хромовский профайлер, мягко говоря, не очень информативно.
По профайлеру FB.
Три функции (?)() - это функции, которые в цикле обрабатывают элементы массива. К ним претензий нет.
А вот функции after() и clean() (нативные функции jQuery) отрабатывают по одному разу, но работают дохрена долго.
Подскажите, пожалуйста, как можно улучшить ситуацию или хотя бы в какую сторону копать.