Chapter 17. Minification and Compression
Once you have your built files validated, concatenated, and baked,
it’s time to make those files as small as possible. This step is
accomplished with two processes: minification and compression. Minification
is the process of eliminating unnecessary white space, removing comments,
and performing some processing on the files to make them as small as
possible. Compression uses a specific compression method, such as
gzip, to shrink the file even further. The difference
between a minified file and a compressed file is that minified files are
still just plain text and can be edited and loaded as usual (albeit with a
bit of trouble, because all formatting is removed), whereas compressed files
are unreadable and must be decompressed to be usable in a web page. Today’s
browsers automatically decompress any compressed files they receive with a
Content-Encoding: gzip header in the
response.
Minification
Minifying a JavaScript file isn’t very complicated, but mistakes or invalid syntax can result if you use an unsafe process. For this reason, it’s best to use a minifier that actually parses the JavaScript before making changes. Parsers know what valid syntax is and can more easily create valid syntax. The three most popular parsing minifiers are:
- YUI Compressor
Often credited with popularizing parser-based minifiers instead of the regular expression-based minifiers. YUI Compressor was first written by Julien Lecomte (and is now maintained by the YUI team); ...
Become an O’Reilly member and get unlimited access to this title plus top books and audiobooks from O’Reilly and nearly 200 top publishers, thousands of courses curated by job role, 150+ live events each month,
and much more.
Read now
Unlock full access