Очень просто и без объяснения преимуществ использования Function
s, вы можете представить себе, что ваша функция является аналогом:
HashSet anonymousMethod(String x) {
return doSomething(x);
}
... который находится анонимно в вашем функциональный объект.
Существует проблема производительности с jQuery и вставкой большой строки HTML к DOM, из-за его $ .trim функция.
Я иногда нахожу простые сценарии dom намного быстрее, чем использование jQuery. Попробуйте что-то как
document.getElementById('id').innerHTML = myarray.join('')
Знайте, что часто узкое место скорости не создает DOM, но вставляет DOM. Это особенно верно на IE со сложными таблицами стилей и когда новое содержание содержит много уровней вложенных тегов.
См.: http://bitkickers.blogspot.com/2008/12/ajax-grid-performance-in-ie.html
Вы рассмотрели использование библиотеки шаблонной обработки? ЧИСТЫЙ имеет очень хорошую производительность, например (испытайте 500 примеров строки).
я бездельничал с добавлением большого объема HTML вчера. я думаю, представляя на стороне сервера, и вставка является способом пойти, также я могу добавить, это, не использование jQuery быстрее 50-100ms в моих тестах, которые являются здесь:
http://programmingdrunk.com/playground
необходимо будет позволить консоли поджигателя видеть результаты скорости
Попытайтесь клонировать части самого DOM вместо того, чтобы генерировать его на лету (т.е. добавьте фактический DOMElements, таким образом, они не должны быть созданы).
Преследование является правильным, не имеет значения, как быстро можно генерировать HTML через JavaScript, это - вставка DOM, которая уничтожит Вас. Свяжите любой язык программирования DOM, и это будет медленно.
Мои единственные предлагают, должен был нумеровать страницы таблицу, таким образом, Вы не загружаете так многих сразу, или возможно не использовать Ajax вообще.
Вы, вероятно, получили бы лучшую производительность, если Вы делаете поколение HTML на стороне сервера и затем используете Ajax, чтобы получить HTML и добавить ее к Вашему DOM. (Я предполагаю, что Вы получаете все данные из сервера с помощью Ajax так или иначе.)
В моем случае, document.getElementById ('идентификатор') .innerHTML = myarray.join ('') также уничтожитель, так как массив имеет 10 строк HTML. Соединения создали бы большую длинную строку, и nnerHTML производительность значительно варьируется между 100 мс к 1 200 мс на IE 7.
какие-либо ущелья?