Javascript-ის მინიფიკაციის ინსტრუმენტი
Javascript-ის მინიფიცირება იღებს თქვენს მიერ დაწერილ ლამაზ, კარგად ჩამოყალიბებულ JS კოდს და აშორებს ინტერვალს, ჩაღრმავებას, ახალ სტრიქონებსა და კომენტარებს. ეს არ არის აუცილებელი Javascript-ის წარმატებით გასაშვებად. ის ასევე ართულებს Javascript-ის წაკითხვას წყაროს ნახვისას.
ბევრი დეველოპერი ინარჩუნებს „ლამაზ“ ვერსიას და პროექტის განლაგების შემდეგ სკრიპტებს მინიფიკაციის პროგრამის მეშვეობით გაუშვებს. ისინი ასევე ხშირად აერთიანებენ თავიანთ მრავალ სკრიპტის ფაილს ერთ ფაილში.
რატომ გამოვიყენოთ Javascript მინიფიკატორი?
მინიფკაციის მიზანი ვებსაიტის სიჩქარის გაზრდაა. მინიმიზაციას შეუძლია სკრიპტი 20%-მდე დააპატარაოს, რაც ჩამოტვირთვის უფრო სწრაფ დროს გამოიწვევს. ზოგიერთი დეველოპერი მას ასევე იყენებს კოდის „დასაბნევად“. ეს ართულებს კოდის წაკითხვას, შესაბამისად, ართულებს უკუინჟინერიას ან კოპირებას.
ასევე გავრცელებული პრაქტიკაა ერთი ვებსაიტის ყველა Javascript ფაილის ერთ ფაილში გაერთიანება. ამას რამდენიმე უპირატესობა აქვს. ის ამცირებს ვებსაიტის ყველა ელემენტის მისაღებად საჭირო HTTP მოთხოვნების რაოდენობას. ის ასევე უფრო ეფექტურს ხდის მინიფექციას და gzip შეკუმშვას.
Javascript-ის მინიფიკაციის მაგალითი
გალამაზებული 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);
}
ასე მინიმიზირდება:
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);}