JavaScript Minifier
तेज़ structural JavaScript minify — comments हटाएं, whitespace संक्षिप्त करें, खाली लाइनें ड्रॉप करें। पहले/बाद का आकार और बचत प्रतिशत देखें।
परिणाम देखने के लिए ऊपर इनपुट डालें।
JXXR1 द्वारा बनाया गया · ♥ स्पॉन्सर करें · ☕ मुझे coffee दिलाएं
यह किसके लिए है?
एक structural JavaScript minifier कोड के व्यवहार को बदले बिना comments और अनावश्यक whitespace को हटा देता है। आउटपुट input के कार्यात्मक रूप से समान होता है — वही identifiers, वही logic — बस छोटा। यह टूल वह pass आपके browser में चलाता है, मुश्किल हिस्सों सहित: यह strings के content और regex literals को अछूता रखता है, और उन जगहों पर newlines बनाए रखता है जहाँ ASI (Automatic Semicolon Insertion) अन्यथा व्यवहार बदल देता।
कब इस्तेमाल करें
- HTML bookmarklet या single-file demo में शामिल करने के लिए snippet को जल्दी trim करना, जहाँ आपके पास build chain नहीं है।
- यह तय करने से पहले कि क्या असली optimiser सेटअप करना सार्थक है, hand-written script में कितनी "चर्बी" है इसकी जाँच करना।
- Bundler को साथ खींचे बिना static site में छोटी library को inline करना।
आम गलतियाँ
- यह structural minify है, compressor नहीं। यह variables का नाम नहीं बदलेगा, dead-code eliminate नहीं करेगा, properties को mangle नहीं करेगा, या tree-shake नहीं करेगा। Production builds के लिए, अपने pipeline में
terser,esbuild, याswcका उपयोग करें — वे structural minify के ऊपर 30–60% और काटते हैं। - ASI trap. JavaScript आश्चर्यजनक जगहों पर semicolons डालता है। Minifier ऐसी जगहों पर newline बनाए रखता है जहाँ उसे हटाने से अर्थ बदल जाता (जैसे
return\n{}≠return {})। यदि संभव हो तो source में explicit semicolons पर टिके रहें — यह सबके लिए minification को सुरक्षित बनाता है। - Source maps generate नहीं होते। यदि आप production में minified JS भेजते हैं, तो असली toolchain के साथ source maps generate करें ताकि debugging समझदार रहे।
- आधुनिक compression हावी है। Wire पर Brotli/gzip वही करता है जो ज़्यादातर minify करता है। सबसे बड़े लाभ unused code हटाने से आते हैं — इसके लिए static analysis चाहिए जो एक structural minifier नहीं कर सकता।
- जो आप commit करते हैं उसे minify न करें। Source सुंदर रूप में जाता है; build/deploy पर minify करें।