Javascriptin minify-työkalu
JavaScriptin minimifiointi poistaa kirjoittamastasi kauniista ja hyvin muotoillusta JavaScript-koodista välilyönnit, sisennykset, rivinvaihdot ja kommentit. Näitä ei tarvita JavaScriptin onnistuneeseen toimintaan. Se myös vaikeuttaa JavaScriptin lukemista lähdekoodia katseltaessa.
Monet kehittäjät ylläpitävät "kaunista" versiota ja ajavat projektinsa käyttöönoton jälkeen skriptejään minimointiohjelman avulla. He myös usein yhdistävät useita skriptitiedostojaan yhdeksi tiedostoksi.
Miksi käyttää Javascript Minifieria?
Minimoinnin tarkoituksena on lisätä verkkosivuston nopeutta. Minimointi voi pienentää skriptiä jopa 20 %, mikä lyhentää latausaikaa. Jotkut kehittäjät käyttävät sitä myös koodinsa "hämärtämiseen". Tämä vaikeuttaa koodin lukemista, mikä vaikeuttaa sen takaisinmallintamista tai kopioimista.
On myös yleistä käytäntöä yhdistää kaikki yhden verkkosivuston Javascript-tiedostot yhdeksi tiedostoksi. Tällä on useita etuja. Se vähentää HTTP-pyyntöjen määrää, jotka on tehtävä kaikkien verkkosivuston elementtien saamiseksi. Se myös tehostaa minifiointia ja gzip-pakkausta.
Javascriptin minify-esimerkki
Kaunistettu Javascript:
var a = document.createElement('a');
mimeType = mimeType || 'application/octet-stream';
if(navigator.msSaveBlob) {
navigator.msSaveBlob(new Blob([content], {
type: mimeType
}), fileName);
} else if(URL && 'download' in a) {
a.href = URL.createObjectURL(new Blob([content], {
type: mimeType
}));
a.setAttribute('download', fileName);
document.body.appendChild(a);
a.click();
document.body.removeChild(a);
} else {
location.href = 'data:application/octet-stream,' + encodeURIComponent(content);
}
Pienennetään näin:
var a=document.createElement('a');mimeType=mimeType||'application/octet-stream';if(navigator.msSaveBlob){navigator.msSaveBlob(new Blob([content],{type:mimeType}),fileName);}else if(URL&&'download'in a){a.href=URL.createObjectURL(new Blob([content],{type:mimeType}));a.setAttribute('download',fileName);document.body.appendChild(a);a.click();document.body.removeChild(a);}else{location.href='data:application/octet-stream,'+encodeURIComponent(content);}