JavaScript Minifier (JS Küçültücü)
JavaScript'i yapıştırın ve Terser ile küçültün: ölü kod kaldırılır, adlar kısaltılır, boşluklar yok olur. Sözdizimi hataları tam satır ve sütunu gösterir.
Tarayıcınızda çalışırKayıt gerekmezHiçbir şey yüklenmez
JavaScript Minifier nasıl kullanılır?
- JavaScript kodunuzu yapıştırın veya bir
.jsdosyası açın. - Seçenekleri belirleyin: Adları kısalt yerel değişkenleri kısaltır, Sıkıştır kodu daha küçük bir eşdeğerine dönüştürür, ES modülü üst düzey
import/export'u etkinleştirir. - Kullanıcılarınızın tarayıcılarının desteklediği ECMAScript hedefini seçin. ES2020 tüm güncel (evergreen) tarayıcılar için güvenlidir.
- Çıktının altındaki boyutu, tasarrufu ve gzip tahminini kontrol edin.
- Küçültülmüş kodu kopyalayın veya
output.min.jsolarak indirin.
JavaScript minifier ne yapar?
Küçültme (minification), JavaScript'in yaptığı işi değiştirmeden boyutunu azaltır. Bu araç webpack, Vite ve Rollup'ın arkasındaki küçültücü olan Terser'ı kullanır ve üç tür değişiklik uygular:
- Boşluk ve yorumların kaldırılması: girintiler, satır sonları ve yorumlar JavaScript motoru için gerekli değildir.
- Ad kısaltma (mangling):
subtotalgibi yerel değişken ve fonksiyon parametresi adları tek harfe dönüşür. Global adlara ve nesne özelliklerine dokunulmaz, böylece genel API'niz çalışmaya devam eder. - Sıkıştırma: sabit ifadeler önceden hesaplanır, erişilemeyen kod atılır,
ififadeleri üçlü operatöre dönüşür ve kısa fonksiyonlar satır içine alınır.
Küçültme ve gzip: ikisi de gerekli mi?
Evet. Gzip ve Brotli, ağ üzerinde tekrarlanan bayt kalıplarını sıkıştırır; küçültme ise tarayıcının indirmesi, ayrıştırması ve derlemesi gereken baytları tamamen ortadan kaldırır. Tipik bir script küçültmeyle %40–60, ardından gzip ile %60–70 daha küçülür. Burada gösterilen gzip boyutu, sunucunuzun gerçekte göndereceği boyut için iyi bir tahmindir.
Lisans yorumlarını korumak
Birçok açık kaynak lisansı (MIT, BSD, Apache) telif hakkı bildiriminin kodla birlikte kalmasını şart koşar. Geleneksel olarak /*! ile başlayan veya @license ya da @preserve içeren yorumlar, Lisans yorumlarını koru açıkken korunur.
Ne zaman elle küçültmemeli?
Projeniz zaten bir bundler kullanıyorsa, production build'lerini onun küçültmesine izin verin ve hata ayıklama için source map üretin. Online bir küçültücü; tek seferlik script'ler, bir CMS veya tag manager için kod parçaları, bookmarklet'ler ve bir kodun ne kadar küçülebileceğini görmek için idealdir.
Sıkça sorulan sorular
Kodum bir sunucuya yükleniyor mu?
Küçültme kodumu bozabilir mi?
Function.prototype.toString()'e veya eval aracılığıyla yerel değişken adlarına dayanan kod etkilenebilir; bu durumda Adları kısalt seçeneğini kapatın.