Javascript.RU

Сжатие Javascript и CSS

При сжатии javascript, как и HTML/CSS, используется GZIP на сервере: mod_deflate в apache/nginx, mod_deflate/mod_compress в lighttpd.

Это - универсальное сжатие. Но есть и специфическое, которое помогает уменьшить размер в 2 и более раза, по сравнению с простым gzip.

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

Рекомендация номер один. YUI Compressor(страница)
использует парсер javascript, написанный на языке java, который называется Rhino.

Патченный Rhino сжимает за счет двух основных операций:

  1. убирает лишние пробельные символы и комментарии
  2. заменяет имена локальных переменных на более короткие

Чтобы его использовать, нужны такие компоненты:

  • Установленная Java
    • желательно, чтобы исполняемый файл java был на текущем пути (PATH)
  • Скачать YUI Compressor

Сжать файл myfile.js в myfile-min.js:

java -jar yuicompressor-x.y.z.jar myfile.js -o myfile-min.js

Также есть ряд полезных опций, о которых Вы узнаете, запустив:

java -jar yuicompressor-x.y.z.jar -h

Компрессор также умеет сжимать CSS, вставлять переносы строк после каждой точки с запятой, или каждые NN символов, и т.д.

Если русские символы криво сжимаются --- используйте опцию "charset".

Важно: при сжатии, в целях безопасности, YUICompressor не будет сжимать локальные переменные во всех областях видимости, связанных с вызовами with и eval. Поэтому использовать эти конструкции не рекомендуется.

Можно использовать для обфускации javascript, для сжатия не рекомендуется.

Утилита Packer доступна на нескольких языках программирования по адресу http://dean.edwards.name/download/#packer.

Можно поиграть с реализацией packer на javascript по адресу http://dean.edwards.name/packer/.

Packer делает следующее:

  1. Сжимает javascript регулярными выражениями
  2. Использует алгоритм архивации со словарем

Например, напустим PHP-версию на скрипт:

function somefunc() {
	var test = 5
	var myTest = 7

	/* go go go!!! */
	go(myTest)
}

Результат сжатия (все в одну строку):

eval(function(p,a,c,k,e,d){e=function(c){return c};if(!''.replace(/^/,String)){while(c--){d[c]=k[c]||c}k=[function(e){return d[e]}];e=function(){return'\\w+'};c=1};while(c--){if(k[c]){p=p.replace(new RegExp('\\b'+e(c)+'\\b','g'),k[c])}}return p}('3 6(){1 2=5 1 0=7 4(0)}',8,8,'myTest|var|test|function|go||somefunc|'.split('|'),0,{}))

При загрузке javascript разжатие осуществляется автоматически запуском eval.

Это означает, что нагрузка по разархивации ложится на javascript.
Есть мнения (new.com: http://www.clientcide.com/best-practices/optimization/dean-edwards-packer-compression-tool/ ), что это может привести к неоправданным тормозам на разархивацию вместо загрузки.

Тем более, что JS-файл кешируется, и при последующих заходах на страницу браузер будет снова и снова разархивировать один и тот же javascript-файл.

Packer имеет смысл использовать для сжатия javascript в двух случаях:

  1. Вы не хотите использовать gzip-компрессию, например, чтобы избежать глюков старых браузеров при распаковке javascript
  2. Вы хотите обфусцировать код, сделать его непонятным

В остальных случаях можно обойтись YUI Compressor как для Javascript так и для CSS.

Версия jQuery: 1.3.2. Это для примера, с тем же успехом можно было взять и другую ветку.

В названии файлов

  • min - родная минификация jQuery. Тот же результат получается при минификации yui compressor 2.4.2
  • packer - означает, что применили PHP packer 1.1
  • gz - обычный gzip. Таким же gzipом сжимает скрипты вебсервер.

Несколько суффиксов обозначают два последовательно запущенных компрессии. Например, .min + .gz означает минифицированный и затем gzip'ованный скрипт.

Почти все современные браузеры принимают от сервера gzip'ованные скрипты.

jquery-1.3.2.js 120763
jquery-1.3.2.js.gz 35361
jquery-1.3.2.min.js 57254
jquery-1.3.2.min.js.gz 19716
jquery-1.3.2.pack.js 41025
jquery-1.3.2.pack.js.gz 20274

Из таблицы видно, что наилучший результат достигается после минификации с последующим gzip (jquery-1.3.2.min.js.gz).

Итак, лучший метод сжатия выбран как в теории и проверен на практике. Это минификация скрипта. А gzip пусть делает сервер.

На текущий момент наилучшим способом сжать javascript является использование Google Closure Compiler.

Этот инструмент заслужил отдельный цикл статей: Google Closure Compiler в деталях.

Соответственно, рекомендация: Google Closure Compiler + GZIP. Причины те же.


Автор: Digger (не зарегистрирован), дата: 5 июля, 2008 - 20:06
#permalink

Спасибо большое, очень долго искал.


Автор: Гость (не зарегистрирован), дата: 10 октября, 2008 - 22:54
#permalink

Друзья, смею обрадовать вас. Теперь по той же ссылке доступна новая версия - которая ко всему прочему сжимает локальные переменные и не портит регулярные выражения, записанные без кавычек.
Я тестировал программу на довольно больших кусках кода. Но вот маленький примерчик, с которым она легко справляется:
function test() {
var varOut/*a*/ = "opa";
function testIn(param) {
var str = varOut+"2, param: "+param;
return str.replace(/ p/i, '');
}
alert(testIn("!"));
}


Автор: Shasoft, дата: 19 апреля, 2009 - 20:07
#permalink

А можете для PHP подсказать компрессор?

Я пользуюсь http://code.google.com/p/jsmin-php/, но он не преобразует локальные переменные, выкусывает комментарии и переносы строк, да и то, не все.

Может кто знает что-то получше на PHP?


Автор: SleepWalker, дата: 21 июня, 2009 - 12:43
#permalink

а можно заставить браузер кушать gz файлы, если у меня нету доступа к настройкам сервера? тоесть к примеру если ети файлы сразу в формате gz. ато если просто вставить их в тег script, ничего не получается


Автор: Илья Кантор, дата: 21 июня, 2009 - 12:57
#permalink
  1. При запросе браузер указывает в заголовках, что может принять gzip-формат.
  2. Сервер отсылает сжатое содержимое, указывая, что оно сжато, соответствующим заголовком.
  3. Браузер, увидев такой заголовок, разжимает содержимое перед показом.

Настройки сервера здесь касаются только пункта 2. То есть, сервер может быть настроен на сжатие определенных документов, или сжатие вообще может не не настраиваться.

Браузер в любом случае кушает gzip'ованное содержимое, если сервер сообщил про сжатие в заголовках.


Автор: SleepWalker, дата: 21 июня, 2009 - 13:05
#permalink

печально, к настройкам серва мне не добратся(
а после прочтения этой статьи пакером не хочется сжимать, а без gzip он самый эффективный.


Автор: sunnybear (не зарегистрирован), дата: 28 июня, 2009 - 14:18
#permalink

JSMin + gzip почти равен YUI + gzip. Зря тут нет результатов.
http://webo.in/articles/habrahabr/11-minifing-javascript/
А по поводу "битого" кода -- пишите его в строгом соответствии со стандартами и в нормальной нотации, а потом сжимайте.


Автор: Илья Кантор, дата: 30 июня, 2009 - 10:12
#permalink

а) Здесь есть результаты.
б) Не сбивайте с толку людей, основываясь на кривых данных.

Посмотрел статью.
Часть ссылок на файлы, использованные для тестирования в этой статье, просто не открывается: 404.

Кроме того (цитирую) "для анализа были найдены несколько ... JS-файлов ... разных .. степеней изначального сжатия".

Я посмотрел файлы (которые не 404) - так и есть.

То есть, автор сжимает уже изначально сжатые файлы вместе с несжатыми, потом сжимает их и бросает результат в одну кучу. Так делать нельзя.

Компрессия в реальной жизни применяется исключительно к несжатым файлам.


Автор: Aleko (не зарегистрирован), дата: 16 октября, 2009 - 17:39
#permalink

Вот, написал ещё такой способ сжатия. сжатие почти в 50%. Читаем: Сжимаем css с помощью base62


Автор: Илья Кантор, дата: 11 ноября, 2009 - 09:30
#permalink

Этот способ не стоит использовать, если на сервере делается GZIP. Лучше YUI + GZIP.


Автор: Гость (не зарегистрирован), дата: 30 августа, 2010 - 16:34
#permalink

это на валидацию никак не влияет?


Автор: Гость (не зарегистрирован), дата: 6 декабря, 2010 - 16:04
#permalink

http://javascript.ru/optimize/javascript-compression#packer

цитата:
Результат сжатия (все в одну строку):
eval( ...

запустил этот код и получил - Ошибка, предполагается наличие ";"
запускал и отдельным файлом *.JS и в составе HTML через тег
Sad


Автор: tol64, дата: 14 декабря, 2011 - 04:04
#permalink

Подскажите, что значит:
"желательно, чтобы исполняемый файл java был на текущем пути (PATH)".


Автор: Гость (не зарегистрирован), дата: 18 мая, 2012 - 00:55
#permalink

Если код написан некосоруко, то есть нет лишних пробелов, то код в одну строку превращается и простым редактором типа Notepad++ замещением символов табуляции и конца строки в пустую строку за пару секунд. Вуаля)))


Автор: Простой (не зарегистрирован), дата: 6 сентября, 2012 - 03:15
#permalink

Хороший способ ускорить сайт или блог.


Автор: Гость (не зарегистрирован), дата: 6 июня, 2013 - 20:51
#permalink

Не используйте packer для обфускации. Совсем он ничего не делает, а кодировка обратима. Да и на самом сайте пакета написано компрессор, а не обфускатор.


Автор: Рудаков Павел (не зарегистрирован), дата: 25 октября, 2013 - 19:44
#permalink

Рекомендую всем хороший и, главное, бесплатный сервис для размещения файлов CSS и JS-библиотек с возможностью создавать прямые ссылки. Есть минимизация файлов. Ссылка: dirlink.ru


Автор: Юлия777 (не зарегистрирован), дата: 30 сентября, 2016 - 12:44
#permalink

Сокращенный код потом сложно редактировать, как обратно вернуть?


Автор: Гость (не зарегистрирован), дата: 4 октября, 2018 - 13:00
#permalink

Сжатый код помогает защищать разработки, пригодится при разработке сайтов и программ.


Автор: Insert (не зарегистрирован), дата: 27 марта, 2019 - 19:42
#permalink

Отличная статья. А почему вы сервис https://c-wd.ru/tools/compressorcss/ по сжатию CSS не рассмотрели?


Автор: Patsy J. Moore (не зарегистрирован), дата: 7 октября, 2019 - 15:06
#permalink

You have remarked very interesting points! ps decent website. last day on earth pc


Автор: patsm00re18 (не зарегистрирован), дата: 7 октября, 2019 - 15:08
#permalink

thanks you for the nice post, i benefit a lot! love balls pc


Автор: happy wheels (не зарегистрирован), дата: 25 февраля, 2020 - 06:02
#permalink

This is a great thing, I think everyone feels this information is very valuable, thank you candy crush soda


Автор: Sophie Miller (не зарегистрирован), дата: 1 июля, 2020 - 10:38
#permalink

what is a good sat score for harvard
Hello! this complex question. Here it is necessary to think...


Автор: nobita88, дата: 19 ноября, 2020 - 12:55
#permalink

An article that is remarkable and should be learned. Thank you for providing this great information. driving directions


Автор: noks (не зарегистрирован), дата: 19 декабря, 2020 - 13:26
#permalink

I really like reading through a post that can make people think. Also, many thanks for permitting me to comment! basketball legends


Автор: casual sex manchester (не зарегистрирован), дата: 5 июля, 2021 - 20:30
#permalink

If you want to find casual sex contacts for hot chat in United Kingdom visit casual sex manchester and you will not regret it


Автор: adult chats uk (не зарегистрирован), дата: 7 сентября, 2021 - 20:02
#permalink

Find fine ladies for sexy chat contacts in UK and enjoy on our web platform adult chats uk


Автор: Гость (не зарегистрирован), дата: 16 сентября, 2021 - 04:30
#permalink

Love to see this useful web platform. Thank you very much.Get jasa SEO at https://seohandal.id official web.


Автор: sex frankfurt (не зарегистрирован), дата: 27 сентября, 2021 - 20:34
#permalink

Your work is very good. Thank you for sharing great information to us. sex frankfurt


Автор: belfast shemale (не зарегистрирован), дата: 5 октября, 2021 - 16:20
#permalink

belfast shemale is the best web place for hot chat with young girls in United Kingdom so check out right now and enjoy


Автор: sexanzeigen graz (не зарегистрирован), дата: 11 октября, 2021 - 14:47
#permalink

Find hot local ladies ready for casual contacts in EU only at sexanzeigen graz


Автор: justicehwrknz807 (не зарегистрирован), дата: 10 января, 2022 - 10:16
#permalink

This is a very interesting post that can be helpful to anyone who reads it. We are looking forward to reading your future posts. Handy Solutions


Автор: 먹튀검증사이트추천 (не зарегистрирован), дата: 12 января, 2022 - 12:30
#permalink

If you are going for best contents like I do, simply go to see this website all the time as it provides feature contents, thanks 먹튀검증사이트추천


Автор: lokiko (не зарегистрирован), дата: 11 марта, 2022 - 11:25
#permalink

This is a great idea, it will definitely be shared widely, thanks for sharing it with us temple run


Автор: Transen in Favoriten (не зарегистрирован), дата: 30 марта, 2022 - 21:12
#permalink

If you want casual sex contact in EU try to find fine ladies at Transen in Favoriten


Автор: Гость (не зарегистрирован), дата: 16 апреля, 2022 - 00:45
#permalink

Автор: Ramona Toscher (не зарегистрирован), дата: 28 июня, 2022 - 20:39
#permalink

Sex Aachen ist sorgfältig mit unserer Matchmaking-Prozess, um sicherzustellen, dass Sie einen kompatiblen und reifen Sex hookup Partner zu sichern. Sie können nie etwas falsch machen, wenn Sie unserer Plattform beitreten. Wir sind unseren Mitbewerbern im Erwachsenen-Chat voraus, indem wir schnellere, einfachere und bequemere zwanglose Begegnungen und qualitativ hochwertige Matches anbieten. Für die beste lokale und internationale Erfahrung, suchen Sie nicht weiter. Worauf warten Sie noch? Genießen Sie die ganze Fülle, die wir zu bieten haben, indem Sie sich noch heute auf unserer exklusiven Plattform anmelden.


Автор: allanpetter (не зарегистрирован), дата: 30 июля, 2022 - 08:14
#permalink

Hello. I'm subscribed to your posts. You inspire me a lot. mold removal professional near me san Antonio tx


Автор: jams (не зарегистрирован), дата: 14 августа, 2022 - 11:06
#permalink

This is a great inspiring article.I am pretty much pleased with your good work.You put really very helpful information. Keep it up. Keep blogging. Looking to reading your next post.
Immobilien Tour Nordzypern


Автор: thomasfrank, дата: 16 августа, 2022 - 10:22
#permalink

This post is exactly what I'm looking for. quordle, The content is fully fit and I enjoy it so much. weaver game


Автор: allanpetter (не зарегистрирован), дата: 17 августа, 2022 - 13:29
#permalink

Thanks for sharing such a great content. Search Engine Optimization in Fort Worth Texas


Автор: hiwosa (не зарегистрирован), дата: 25 августа, 2022 - 09:32
#permalink

I would like to thank you for the efforts you have made in writing this article. I am hoping the same best work from you in the future as well..
immobilien nordzypern


Автор: antiguans2000, дата: 2 сентября, 2022 - 09:48
#permalink

I really appreciate you sharing ideas on how to do this correctly.

see services


Автор: Гость (не зарегистрирован), дата: 11 сентября, 2022 - 22:47
#permalink

thank you for the efforts you have made in writing this article. I am hoping the same best work from you in the future


Автор: Гость (не зарегистрирован), дата: 11 сентября, 2022 - 22:47
#permalink

you for the efforts you have made in writing this article. I am hoping the same best work from you


Автор: Гость (не зарегистрирован), дата: 13 сентября, 2022 - 07:56
#permalink

You and I both have the same issue. Visit the game among us to play some thrilling action games as you search for the solution.
redactle game


Автор: Гость (не зарегистрирован), дата: 22 сентября, 2022 - 10:30
#permalink

The racing game genre of video games is very popular all around the globe. Various great racing games, including smash karts , have been made throughout time on a range of different platforms.


Автор: antiguans2000, дата: 22 сентября, 2022 - 11:40
#permalink

You don't want to use gzip compression, for example to avoid old browser glitches when decompressing javascript.

www.dallasretainingwallcontractors.com


Автор: nacy (не зарегистрирован), дата: 3 октября, 2022 - 12:17
#permalink

In the royal battle lol beans game, each round's elimination will be based on those who don't arrive at the finish line in time. You must therefore take action right away. By defending yourself, get through the qualification and move on to the championship round.


Автор: Jacket Hunt (не зарегистрирован), дата: 6 октября, 2022 - 17:43
#permalink

Thanks for sharing this amazing and informative post. keep sharing with us.
B3 Men Shearling Aviator Bomber Leather Jackets


Автор: antiguans2000, дата: 18 октября, 2022 - 16:42
#permalink

If Russian characters are compressed crookedly --- use the "charset" option for towing services greenville.


Автор: Agatha Sanchez (не зарегистрирован), дата: 23 ноября, 2022 - 21:03
#permalink

bejaardensex is ideaal voor eenmalige verbindingen. Het mooie van losse relaties is dat je er niets voor terug verwacht. Je bent niet verplicht je te binden aan iemand die je niet leuk vindt, en je kunt het gewoon vergeten en verder gaan met iemand anders. Maar als u er een vaste gewoonte van wilt maken, kunt u de persoon in uw contact houden en het opnieuw proberen.


Автор: Гость (не зарегистрирован), дата: 26 декабря, 2022 - 06:10
#permalink

Only aim to have amazing content. Your post's lucidity makes me assume you're an expert on the subject. Only aim to have amazing content. Your post's lucidity makes me assume you're an expert on the subject.


Автор: Гость (не зарегистрирован), дата: 26 декабря, 2022 - 06:11
#permalink

Only aim to have amazing content. Your post's lucidity makes me assume you're an expert on the subject. geometry dash subzero


Автор: 온라인바카라사이트 (не зарегистрирован), дата: 13 января, 2023 - 12:07
#permalink

Your ideas inspired me very much. 온라인바카라사이트 It's amazing. I want to learn your writing skills. In fact, I also have a website. If you are okay, please visit once and leave your opinion. Thank you.
vcbn


Автор: nobodybelong (не зарегистрирован), дата: 7 февраля, 2023 - 09:50
#permalink

i seach it's too, lol. It's just like moto x3m


Автор: contexto game (не зарегистрирован), дата: 8 февраля, 2023 - 05:52
#permalink

I am very interested in this forum. give me lots of useful information. help me a lot. contexto game


Автор: Jacket Hunt (не зарегистрирован), дата: 9 февраля, 2023 - 11:19
#permalink

love the content of this blog and the positive intent you have. Thanks!
Men Studded Jackets


Автор: mapquestdirections (не зарегистрирован), дата: 27 февраля, 2023 - 06:51
#permalink

Find out how to walk or drive step-by-step to your destination on mapquest directions


Автор: Leather Shirts men (не зарегистрирован), дата: 27 февраля, 2023 - 09:56
#permalink

Thanks for shreaing great post.


Автор: contexto game (не зарегистрирован), дата: 2 марта, 2023 - 10:45
#permalink

You and I both agree. This article is really motivating. I like your article, and everything you provide with us is up to date and quite educational. I want to save this website so I can come back and tell you how well you did your work. contexto game


Автор: leather jacket studs (не зарегистрирован), дата: 7 марта, 2023 - 11:50
#permalink

3amoto Leather provides a hassle-free method to purchase on a budget. Our website offers a distinguished type of clothes that has been creatively designed for people like you! Every item on our store has passed a quality assurance test, ensuring that you have the greatest possible clothing. Our extensive inventory includes a wide range of casual and formal clothing. Our craftsmen's extraordinary expertise profoundly finds those varieties.


Автор: blabling2 (не зарегистрирован), дата: 9 марта, 2023 - 11:52
#permalink

Favorite mind game connect 4


Автор: Eddie Nelson (не зарегистрирован), дата: 13 марта, 2023 - 12:16
#permalink

Fans of Wordle who are looking for a challenge that is more difficult will like playing the word puzzle duotrigordle, which is more difficult.


Автор: Sexanzeigen in Köniz (не зарегистрирован), дата: 15 марта, 2023 - 14:26
#permalink

If you want to find out something about fine ladies in EU you must check Sexanzeigen in Köniz


Автор: micheljohns (не зарегистрирован), дата: 18 апреля, 2023 - 19:50
#permalink

Shop the latest collection of kevin costner yellowstone jacket for ultimate comfort and warmth. Available in various sizes and colors. Get yours today!


Автор: alexhopkins (не зарегистрирован), дата: 28 апреля, 2023 - 06:35
#permalink

I would like to say that this blog convinced me to do it! Thanks, very good post stumble guys


Автор: SIANA (не зарегистрирован), дата: 12 мая, 2023 - 03:00
#permalink

Автор: davidmiller (не зарегистрирован), дата: 2 июня, 2023 - 17:37
#permalink

Компрессор также умеет сжимать CSS, вставлять переносы строк после каждой точки с запятой, или каждые NN символов, и т.д.
Если русские символы криво сжимаются --- используйте опцию "charset".


Автор: Гость (не зарегистрирован), дата: 12 июля, 2023 - 02:48
#permalink

Автор: Гость (не зарегистрирован), дата: 24 июля, 2023 - 06:23
#permalink

Super Mario has been released for every major Nintendo video game console, now you can play it online on PC or phone at any time.


Автор: Marisole (не зарегистрирован), дата: 27 июля, 2023 - 09:27
#permalink

Conquer the infinite space and surpass your limits with the addictively rewarding only up game.


Автор: Гость (не зарегистрирован), дата: 2 августа, 2023 - 12:32
#permalink

One of the first games in this series, papa's pizzeria was initially developed as a flash game and released in the year 2009.


Автор: Гость (не зарегистрирован), дата: 17 октября, 2023 - 12:36
#permalink

Pokedoku encourages players to learn more about the various Pokémon, including their types, evolutions, generations, and other characteristics.


Автор: jann88 (не зарегистрирован), дата: 24 октября, 2023 - 05:50
#permalink

Minification is a technique used to reduce the size of JavaScript files by removing unnecessary characters such as white space, comments, and line breaks. This can significantly reduce the file size and improve website loading times duck life. Additionally, as you mentioned, variable names can be shortened to further reduce file size and make it more difficult for others to understand or modify the code.


Автор: Гость (не зарегистрирован), дата: 2 ноября, 2023 - 05:58
#permalink

The information you share is great, please continue to write about this topic regularly moto x3m unblocked


Автор: kathy23 (не зарегистрирован), дата: 3 ноября, 2023 - 06:09
#permalink

I hope there will be a lot more to come. Your contribution is greatly appreciated. I've bookmarked your site because I found so many useful articles here. quordle today


Автор: panda (не зарегистрирован), дата: 3 ноября, 2023 - 10:41
#permalink

Currently, downloading videos from TikTok without a watermark is a violation of TikTok's usage policy, nytimes crossword as the content on TikTok belongs to the user who created it and is not allowed to be distributed or reused without the author's consent.


Автор: Гость (не зарегистрирован), дата: 21 ноября, 2023 - 12:58
#permalink

The data and insights presented in this piece are among the most useful and informative that can be acquired. Play LOLbeans io for free!


Автор: alicebobby (не зарегистрирован), дата: 23 ноября, 2023 - 07:41
#permalink

хороший метод ускорения блога или сайта. tunnel rush


Автор: morrisoelliott (не зарегистрирован), дата: 14 декабря, 2023 - 15:23
#permalink

Expert multi-state family law attorneys offering comprehensive legal solutions. Navigate complex issues with our skilled professionals by your side.


Автор: morrisoelliott (не зарегистрирован), дата: 14 декабря, 2023 - 15:23
#permalink

Expert multi-state family law attorneys offering comprehensive legal solutions. Navigate complex issues with our skilled professionals by your side.


Автор: Lexie (не зарегистрирован), дата: 25 января, 2024 - 02:20
#permalink

There are free JavaScript libraries that can compress or minify files. You can run them as part of the build or separately.
Local Citations


Автор: Гость (не зарегистрирован), дата: 8 апреля, 2024 - 07:16
#permalink

This game will always be free and unblocked anywhere, so players can enjoy the excitement of the Moto X3M


Отправить комментарий

Приветствуются комментарии:
  • Полезные.
  • Дополняющие прочитанное.
  • Вопросы по прочитанному. Именно по прочитанному, чтобы ответ на него помог другим разобраться в предмете статьи. Другие вопросы могут быть удалены.
    Для остальных вопросов и обсуждений есть форум.
P.S. Лучшее "спасибо" - не комментарий, как все здорово, а рекомендация или ссылка на статью.
Содержание этого поля является приватным и не предназначено к показу.
  • Адреса страниц и электронной почты автоматически преобразуются в ссылки.
  • Разрешены HTML-таги: <strike> <a> <em> <strong> <cite> <code> <ul> <ol> <li> <dl> <dt> <dd> <u> <i> <b> <pre> <img> <abbr> <blockquote> <h1> <h2> <h3> <h4> <h5> <p> <div> <span> <sub> <sup>
  • Строки и параграфы переносятся автоматически.
  • Текстовые смайлы будут заменены на графические.

Подробнее о форматировании

CAPTCHA
Антиспам
7 + 4 =
Введите результат. Например, для 1+3, введите 4.
 
Текущий раздел
Поиск по сайту
Содержание

Учебник javascript

Основные элементы языка

Сундучок с инструментами

Интерфейсы

Все об AJAX

Оптимизация

Разное

Дерево всех статей

Последние комментарии
Последние темы на форуме
Forum