جاوا اسکرپٹ منیفائی ٹول
جاوا اسکرپٹ کو کم کرنے سے خوبصورت، اچھی طرح سے تشکیل شدہ JS کوڈ لیا جاتا ہے جو آپ نے لکھا ہے اور اسپیسنگ، انڈینٹیشن، نئی لائنز اور تبصروں کو ہٹا دیتا ہے۔ یہ جاوا اسکرپٹ کو کامیابی سے چلانے کے لیے ضروری نہیں ہیں۔ ماخذ کو دیکھتے وقت یہ جاوا اسکرپٹ کو پڑھنا زیادہ مشکل بنا دیتا ہے۔
بہت سے ڈویلپرز ایک 'خوبصورت' ورژن کو برقرار رکھیں گے، اور اپنے پروجیکٹ کی تعیناتی کے بعد اپنے اسکرپٹ کو ایک منیفیکیشن پروگرام کے ذریعے چلائیں گے۔ وہ اکثر اپنی بہت سی اسکرپٹ فائلوں کو ایک فائل میں جوڑ دیتے ہیں۔
جاوا اسکرپٹ منیفائر کیوں استعمال کریں؟
منیفیکشن کا مقصد ویب سائٹ کی رفتار کو بڑھانا ہے۔ مائنسائزیشن اسکرپٹ کو 20% تک چھوٹا بنا سکتی ہے، جس کے نتیجے میں ڈاؤن لوڈ کا وقت تیز ہوتا ہے۔ کچھ ڈویلپر اسے اپنے کوڈ کو 'مبہم' کرنے کے لیے بھی استعمال کریں گے۔ اس سے کوڈ کو پڑھنا مشکل ہو جاتا ہے، اس طرح ریورس انجینئر یا کاپی کرنا مشکل ہو جاتا ہے۔
ایک ویب سائٹ کے لیے تمام جاوا اسکرپٹ فائلوں کو ایک فائل میں یکجا کرنا بھی عام بات ہے۔ اس کے کئی فائدے ہیں۔ یہ HTTP درخواستوں کی تعداد کو کم کرتا ہے جو ویب سائٹ کے تمام عناصر کو حاصل کرنے کے لیے کرنے کی ضرورت ہے۔ یہ minification اور gzip کمپریشن کو بھی زیادہ موثر بناتا ہے۔
جاوا اسکرپٹ Minify مثال
خوبصورت جاوا اسکرپٹ:
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);}