<?xml version="1.0"?>
<feed xmlns="http://www.w3.org/2005/Atom" xml:lang="ru">
	<id>https://support.qbpro.ru/index.php?action=history&amp;feed=atom&amp;title=JQuery._%D0%A3%D0%B2%D0%B5%D0%BB%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%BE%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8</id>
	<title>JQuery. Увеличение производительности - История изменений</title>
	<link rel="self" type="application/atom+xml" href="https://support.qbpro.ru/index.php?action=history&amp;feed=atom&amp;title=JQuery._%D0%A3%D0%B2%D0%B5%D0%BB%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%BE%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8"/>
	<link rel="alternate" type="text/html" href="https://support.qbpro.ru/index.php?title=JQuery._%D0%A3%D0%B2%D0%B5%D0%BB%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%BE%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8&amp;action=history"/>
	<updated>2026-04-04T02:24:51Z</updated>
	<subtitle>История изменений этой страницы в вики</subtitle>
	<generator>MediaWiki 1.38.1</generator>
	<entry>
		<id>https://support.qbpro.ru/index.php?title=JQuery._%D0%A3%D0%B2%D0%B5%D0%BB%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%BE%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8&amp;diff=732&amp;oldid=prev</id>
		<title>imported&gt;Vix: Новая страница: «оригинал:http://comp-sandbox.ru/javascript-jquery/jquery-uvelichenie-proizvoditelnosti ----- В этой статье я расскажу нескольк…»</title>
		<link rel="alternate" type="text/html" href="https://support.qbpro.ru/index.php?title=JQuery._%D0%A3%D0%B2%D0%B5%D0%BB%D0%B8%D1%87%D0%B5%D0%BD%D0%B8%D0%B5_%D0%BF%D1%80%D0%BE%D0%B8%D0%B7%D0%B2%D0%BE%D0%B4%D0%B8%D1%82%D0%B5%D0%BB%D1%8C%D0%BD%D0%BE%D1%81%D1%82%D0%B8&amp;diff=732&amp;oldid=prev"/>
		<updated>2013-08-31T20:17:43Z</updated>

		<summary type="html">&lt;p&gt;Новая страница: «оригинал:http://comp-sandbox.ru/javascript-jquery/jquery-uvelichenie-proizvoditelnosti ----- В этой статье я расскажу нескольк…»&lt;/p&gt;
&lt;p&gt;&lt;b&gt;Новая страница&lt;/b&gt;&lt;/p&gt;&lt;div&gt;оригинал:http://comp-sandbox.ru/javascript-jquery/jquery-uvelichenie-proizvoditelnosti&lt;br /&gt;
-----&lt;br /&gt;
В этой статье я расскажу несколько советов по увеличению производительности jQuery и javascript.&lt;br /&gt;
&lt;br /&gt;
1. Кешируйте length при обращении в цикле.&lt;br /&gt;
&lt;br /&gt;
2. В цикле for не обращайтесь каждый раз к свойству массива length, лучше сохранить его в переменную перед началом цикла.&lt;br /&gt;
&lt;br /&gt;
 var myLength = myArray.length;&lt;br /&gt;
	for (var i = 0; i &amp;lt; myLength; i++) {&lt;br /&gt;
	// do stuff&lt;br /&gt;
	}&lt;br /&gt;
3. Добавляйте новый контент вне цикла&lt;br /&gt;
&lt;br /&gt;
Работа с DOM очень сильно сказывается на производительности, поэтому если вы добавляете много элементов к DOM, то лучше сделать это сразу за один вызов.&lt;br /&gt;
&lt;br /&gt;
 // плохая производительность&lt;br /&gt;
 $.each(myArray, function(i, item) {&lt;br /&gt;
 var newListItem = '' + item + '';&lt;br /&gt;
 $('#ballers').append(newListItem);&lt;br /&gt;
 });&lt;br /&gt;
&lt;br /&gt;
 //хорошая производительность&lt;br /&gt;
 var frag = document.createDocumentFragment(); &lt;br /&gt;
 $.each(myArray, function(i, item) {&lt;br /&gt;
 var newListItem = '' + item + '';&lt;br /&gt;
 frag.appendChild(newListItem);&lt;br /&gt;
 });&lt;br /&gt;
 $('#ballers')[0].appendChild(frag);&lt;br /&gt;
&lt;br /&gt;
 // хорошая производительность&lt;br /&gt;
 var myHtml = '';&lt;br /&gt;
 $.each(myArray, function(i, item) {&lt;br /&gt;
 html += '' + item + '';&lt;br /&gt;
 });&lt;br /&gt;
 $('#ballers').html(myHtml);&lt;br /&gt;
&lt;br /&gt;
&lt;br /&gt;
4. Будьте осторожны с анонимными функциями&lt;br /&gt;
&lt;br /&gt;
Очень частое использование анонимных функций может вызвать проблемы. Их сложно отлаживать, поддерживать, тестировать или повторно использовать. Лучше давать имена вашим объектам, обработчикам и callback функциям.&lt;br /&gt;
&lt;br /&gt;
 // плохое использование&lt;br /&gt;
 $(document).ready(function() {&lt;br /&gt;
 $('#magic').click(function(e) {&lt;br /&gt;
 $('#yayeffects').slideUp(function() {&lt;br /&gt;
 // ...&lt;br /&gt;
 });&lt;br /&gt;
 });&lt;br /&gt;
 $('#happiness').load(url + ' #unicorns', function() {&lt;br /&gt;
 // ...&lt;br /&gt;
 });&lt;br /&gt;
 });&lt;br /&gt;
&lt;br /&gt;
 // хорошее использование&lt;br /&gt;
 var PI = {&lt;br /&gt;
 onReady : function() {&lt;br /&gt;
 $('#magic').click(PI.candyMtn);&lt;br /&gt;
 $('#happiness').load(PI.url + ' #unicorns', PI.unicornCb);&lt;br /&gt;
 },&lt;br /&gt;
 candyMtn : function(e) {&lt;br /&gt;
 $('#yayeffects').slideUp(PI.slideCb);&lt;br /&gt;
 },&lt;br /&gt;
 slideCb : function() { ... },&lt;br /&gt;
 unicornCb : function() { ... }&lt;br /&gt;
 };&lt;br /&gt;
 $(document).ready(PI.onReady);&lt;br /&gt;
&lt;br /&gt;
5. Оптимизация селекторов&lt;br /&gt;
&lt;br /&gt;
Оптимизация селекторов является менее важной задачей, чем это было раньше, поскольку большинство браузеров реализует метод document.querySelectorAll() и проблема выборки от jQuery переходит к браузерам. Однако есть несколько советов, которые следует иметь в виду.&lt;br /&gt;
&lt;br /&gt;
Выборки по ID&lt;br /&gt;
&lt;br /&gt;
Всегда хорошо начинать описание селектора с ID.&lt;br /&gt;
&lt;br /&gt;
 // работает быстро&lt;br /&gt;
 $('#container div.robotarm');&lt;br /&gt;
&lt;br /&gt;
 // работает супер-быстро&lt;br /&gt;
 $('#container').find('div.robotarm');&lt;br /&gt;
&lt;br /&gt;
Подход, в котором используется $.fn.find, работает быстрее, — выборки только по ID обрабатываются с помощью метода document.getElementById(), который работает очень быстро — поскольку это нативный метод браузера.&lt;/div&gt;</summary>
		<author><name>imported&gt;Vix</name></author>
	</entry>
</feed>