मोफत कनवर्टर

JavaScript मिनीफायर

तुमच्या ब्राउझरमध्ये JavaScript कोड त्वरित लहान करा आणि संकुचित करा. टिप्पण्या काढा, व्हाइटस्पेस कोलॅप्स करा आणि फाइल आकार कमी करा. मोफत आणि खाजगी.

येथे JS फाइल ड्रॅग आणि ड्रॉप करा

.js फाइल्सना सपोर्ट करते. किंवा वर तुमची JavaScript पेस्ट करा.

किंवा

या साधनाबद्दल

JavaScript मिनिफिकेशन अनावश्यक वर्ण काढून आणि (योग्य मिनीफायरसह) स्थानिक व्हेरिएबल्सला लहान नावांमध्ये पुनर्नामित करून स्त्रोत कोडचा आकार कमी करते. पहिली श्रेणी — व्हाइटस्पेस आणि टिप्पणी काढणे — सरळ आणि जोखीममुक्त आहे. दुसरे — व्हेरिएबल रिनेमिंग — स्कोप नियम समजून घेणे आवश्यक आहे आणि ते Terser आणि esbuild सारखे उत्पादन मिनीफायर्स सर्वोत्तम करतात.

हे साधन सुरक्षित मिनिफिकेशनवर लक्ष केंद्रित करते: टिप्पण्या काढून टाकणे, व्हाइटस्पेस कोलॅप्स करणे, अनावश्यक अर्धविराम काढून टाकणे आणि स्पष्ट नमुने लहान करणे. व्हेरिएबल रिनेमिंग हे पुराणमतवादी आहे — स्पष्ट स्कोपमधील फक्त स्थानिक व्हेरिएबल्सला स्पर्श केला जातो आणि बाह्य-संदर्भित नावे एकटे सोडली जातात. परिणाम स्त्रोताशी कार्यशीलपणे एकसारखे आहे.

उत्पादन-श्रेणी लघुकरणासाठी, समर्पित साधने (Terser, esbuild, swc) संपूर्ण ECMAScript स्कोप मॉडेल समजून घेतात आणि लक्षणीय लहान आउटपुट तयार करतात. पूर्ण बिल्ड सेटअप उपलब्ध नसताना हे साधन द्रुत ब्राउझर-साइड मिनिफिकेशनसाठी आहे.

JavaScript का Minify करा

JavaScript बंडल हे विशेषत: आधुनिक वेबपृष्ठावरील सर्वात मोठे एकल संसाधन आहेत. मिनिफिकेशन नियमितपणे 30-60% आकार कमी करते विरुद्ध unminified स्रोत. gzip किंवा Brotli सह एकत्रित केल्याने, कपात थोडीशी कमी होते, परंतु संयोजन अद्याप मोजता येण्याजोगे बाइट्स वाचवते — विशेषतः स्लो कनेक्शनवरील वापरकर्त्यांसाठी.

वेगवान JavaScript चा अर्थ संवाद साधण्यासाठी वेगवान वेळ असा देखील होतो. लहान स्क्रिप्ट जलद डाउनलोड होतात, जलद पार्स होतात आणि लवकर कार्यान्वित होतात. TTI बाऊन्स रेट आणि SEO रँकिंगवर परिणाम करते अशा साइटसाठी, मिनिफिकेशन हे उपलब्ध सर्वात स्वस्त विजयांपैकी एक आहे.

कसे वापरावे

JavaScript पेस्ट करा, एक लहान आवृत्ती मिळवा.

  1. JavaScript इनपुट जोडा: इनपुट क्षेत्रामध्ये स्त्रोत पेस्ट करा किंवा .js फाइल ड्रॉप करा. मिनीफायर आधुनिक JavaScript (ES2015+) स्वीकारतो ज्यात बाण फंक्शन्स, टेम्प्लेट लिटरल्स, क्लासेस आणि मॉड्यूल यांचा समावेश आहे.
  2. पर्याय निवडा: डीफॉल्ट टिप्पण्या काढून टाकतात आणि व्हाइटस्पेस कोलॅप्स करतात. स्थानिक व्हेरिएबल पुनर्नामित करणे पुराणमतवादी आहे; तुम्हाला जास्तीत जास्त कॉम्प्रेशन हवे असल्यास अधिक आक्रमक पुनर्नामित करणे सक्षम करा.
  3. लहान करा: मिनीफायर स्त्रोताचे विश्लेषण करते, व्हाइटस्पेस आणि टिप्पण्या काढून टाकते आणि कॉम्पॅक्ट आउटपुट उत्सर्जित करते. स्त्रोतातील वाक्यरचना त्रुटी स्पष्ट त्रुटी संदेश तयार करतात.
  4. आउटपुट वापरा: उत्पादनामध्ये तुमचा स्क्रिप्ट स्रोत बदला. पूर्ण ऑप्टिमायझेशनसाठी, झाडाला हलवणारे आणि डेड कोड एलिमिनेशन हाताळणाऱ्या बंडलरसह पेअर करा.

सामान्य वापर प्रकरणे

तांत्रिक तपशील

ECMAScript सिंटॅक्सचा आदर करणारा पार्सर वापरून मिनीफायर JavaScript ला टोकन बनवतो. /* ने चिन्हांकित केलेल्या परवाना टिप्पण्या वगळता टिप्पण्या (सिंगल-लाइन आणि मल्टी-लाइन) काढल्या जातात! उपसर्ग व्हाईटस्पेस सिंटॅक्टली आवश्यक असेल त्याशिवाय (आयडेंटिफायर्स दरम्यान, कीवर्ड नंतर).

कंझर्व्हेटिव्ह व्हेरिएबल रिनेमिंग स्थानिक व्हेरिएबल्सला सरळ स्कोपमध्ये लहान करते. जागतिक, निर्यात आणि आयात केलेली नावे पुनर्नामित केली जात नाहीत — ज्यामुळे बाह्य संदर्भ खंडित होतील. सखोल नाव बदलण्यासाठी, योग्य मॉड्यूल-जागरूक विश्लेषणासह Terser किंवा esbuild वापरा.

एज केसेस: ऑटोमॅटिक सेमीकोलन इन्सर्शन (एएसआय) म्हणजे प्रोग्राम वर्तन बदलणे टाळण्यासाठी मिनीफायरने काही संदर्भांमध्ये नवीन रेषा जतन करणे आवश्यक आहे. टेम्प्लेट लिटरल्स, रेगेक्स लिटरल्स आणि जेएसएक्स (इनपुटमध्ये समाविष्ट असल्यास) अचूकपणे जतन केले जातात कारण त्यांची सामग्री संकुचित करण्यासाठी सुरक्षित नसू शकते.

सर्वोत्तम पद्धती

वारंवार विचारले जाणारे प्रश्न

माझा कोड कसा काम करतो हे मिनिफिकेशन बदलते का?
नाही. मिनिफिकेशन व्हाइटस्पेस आणि टिप्पण्या काढून टाकते, ज्याचा अंमलबजावणीवर परिणाम होत नाही. व्हेरिएबल शॉर्टनिंग (मँगलिंग) स्थानिक व्हेरिएबल्सचे नाव बदलते परंतु वर्तन टिकवून ठेवते. ग्लोबल व्हेरिएबल्स आणि एक्सपोर्ट केलेली नावे अबाधित ठेवली आहेत.
मी विकास किंवा उत्पादनात कमी करावे?
उत्पादनामध्ये फक्त मिनिफाइड कोड वापरा. विकासादरम्यान, मूळ वाचनीय कोड ठेवा. बहुतेक बिल्ड टूल्स (वेबपॅक, विट, एस्बिल्ड) प्रोडक्शन बिल्ड प्रक्रियेचा भाग म्हणून आपोआप मिनिफिकेशन हाताळतात.
मिनिफिकेशन आणि अस्पष्टता यात काय फरक आहे?
फॉर्मेट केलेले असल्यास कोड फंक्शनली वाचण्यायोग्य ठेवताना Minification आकार कमी करते. अस्पष्टतेमुळे कोड समजून घेणे हेतुपुरस्सर कठीण होते (स्ट्रिंग एन्कोडिंग, फ्लो फ्लॅटनिंग नियंत्रण). हे साधन आकार कमी करण्यावर लक्ष केंद्रित करते, अस्पष्टतेवर नाही.
मी किती आकार कमी करणे अपेक्षित आहे?
सामान्यतः 30-60% gzip आधी. लांब व्हेरिएबल नावांसह चांगले-टिप्पणी केलेला कोड सर्वात मोठी कपात पाहतो. gzip कॉम्प्रेशनसह एकत्रित, JavaScript फायली बहुतेक वेळा मूळ स्त्रोतापेक्षा 80-90% लहान असतात.
माझा कोड सर्व्हरवर अपलोड केला आहे का?
नाही. मिनीफायर तुमच्या ब्राउझरमध्ये चालतो.
माझी JavaScript किती लहान असेल?
सामान्यतः 30-60% कपात. लांब अभिज्ञापकांसह व्हेरिएबल-हेवी कोड अधिक संकुचित करतो; अभिव्यक्ती-हेवी कोड कमी दाबतो.
मी हाताने लहान करावे?
कधीच नाही. स्रोतामध्ये वाचनीय JavaScript ठेवा. बिल्ड स्टेप किंवा डिप्लॉयमेंटचा भाग म्हणून मिनिफिकेशन चालवा.
ते TypeScript वर काम करते का?
Tsc किंवा esbuild वापरून TypeScript प्रथम JavaScript वर संकलित करणे आवश्यक आहे. एकदा संकलित केल्यानंतर, परिणामी JavaScript लहान केले जाऊ शकते.