Loading…

Hakkında Çevrimiçi JavaScript Minifikatörü

Saniyeler içinde daha küçük JavaScript paketleri gönderin ⚡. Bu çevrimiçi JavaScript Minifikatörü, JS'nizi AST'ye ayrıştırır, yorumları ve gereksiz boşlukları kaldırır ve güvenli sıkıştırma işlemleri uygular. Bağımsız betikleri küçültmek, hızlı düzeltmeler, etiket yöneticisi parçacıkları ve dağıtım öncesi kontroller için idealdir. Her şey %100 istemci tarafında çalışır – kodunuz tarayıcıdan asla ayrılmaz.

Bu JavaScript Küçültücünün Temel Özellikleri

  • Anında, tarayıcı içi JS sıkıştırma (sunuculara dosya yüklemesi yok)
  • Yorumları kaldırır ve gereksiz boşluk/satır sonlarını daraltır
  • Terser benzeri AST tabanlı sıkıştırma (sabit katlama, güvenli koşullarda ölü kod temizleme)
  • API veya derleme entegrasyonu ile isteğe bağlı tanımlayıcı karıştırma ve gelişmiş bayraklar
  • Modern JavaScript (ES2015+), klasik betikler ve basit modül çıktısı ile çalışır
  • Küçültülmüş JavaScript'i tek tıkla kopyalama veya indirme
  • Küçültülmüş JavaScript'i tek tıkla kopyalama veya indirme
  • Maksimum gizlilik için %100 istemci tarafında işleme

🛠️ JavaScript Nasıl Küçültülür for javascript-minifier

1

JS'nizi Yapıştırın veya Yükleyin

Bir .js/.mjs dosyasını düzenleyiciye bırakın veya JavaScript'inizi doğrudan yapıştırın. Bu araç, tek betikler, yardımcı dosyalar ve küçük paketler için idealdir.

2

Küçültme Modunu Seçin

JavaScript biçimlendiriciyle aynı bileşeni kullanın: biçimlendirilmiş kod yerine sıkıştırılmış çıktı almak için Küçült eylemine geçin.

3

Küçültücüyü Çalıştırın

Kodunuz AST'ye ayrıştırılır, yorumlar ve fazla boşluklar temizlenir, paket boyutunu azaltmak için güvenli sıkıştırma işlemleri uygulanır.

4

Sonucu Kopyalayın veya İndirin

Küçültülmüş JavaScript'i çıktı düzenleyicisinden kopyalayın veya .min.js dosyası olarak indirip HTML'nize, CDN'inize veya derleme çıktınıza ekleyin.

Teknik Özellikler

Temel Dönüşümler (Güvenli Varsayılanlar)

Muhafazakar varsayılanlar, çalışma zamanı davranışını korurken kod boyutunu önemli ölçüde küçültmek için tasarlanmıştır.

İşlemUygulandıNotlar
Satır ve blok yorumlarını kaldırLisans yorumları (/*! ... */) yapılandırma/API aracılığıyla korunabilir
Boşluk ve satır sonlarını daraltAnlamsal olarak güvenli olduğu durumlarda boşluk normalleştirilir; dize ve regex içerikleri korunur
Sabit katlama ve basit satıriçine almaYalnızca sonucun kanıtlanabilir şekilde eşdeğer olduğu durumlarda
Kullanılmayan kod elemeSabit yayılımından sonra ulaşılamayan dalları kaldırır
Tanımlayıcı ad bozma✅ İsteğe bağlıDeğişken ve fonksiyon adlarını kısaltır; gelişmiş seçenekler/API üzerinden yapılandırılabilir
Hata ayıklama yardımcılarını at (console/debugger)✅ İsteğe bağlıÜretim ortamında console çıktısına güvenmediğinizde etkinleştirilebilir

Güvenlik & Uyumluluk Kontrolleri

Gelişmiş seçenekler (ağırlıklı olarak derleme araçları/API üzerinden sunulur) küçültmenin ne kadar agresif olması gerektiğini ayarlamaya yardımcı olur.

SeçenekVarsayılanAçıklama
ecma hedefi2020Çıktı sözdizimini ve bazı sıkıştırma kurallarını kontrol eder
modül vs betikbetikESM paketleri için modül/üst düzey optimizasyonları etkinleştirir
keep_fnames / keep_classnamesfalseDaha iyi yığın izleri veya DI çerçeveleri için adları korur
safari10 / eski tuhaflıklarkapalıYalnızca belirli eski motorları hedeflerken etkinleştirin
toplevelfalseGelişmiş ağaç sallama için kullanılmayan üst düzey bağlamların atılmasına izin verir

Tipik Boyut Küçültme

Tasarruflar, orijinal biçimlendirmeye, yorum yoğunluğuna ve ne kadar kullanılmayan kod bulunduğuna bağlı olarak değişir.

Girdi StiliYalnızca SıkıştırSıkıştır + Boz (Agresif)
Yoğun yorumlu ve boşluklu%35–%55%50–%70
Orta düzeyde biçimlendirilmiş uygulama kodu%20–%35%35–%55
Zaten kompakt kod%5–%15%10–%25

Üretim Derlemeleri için CLI Alternatifleri

Tam uygulamalar ve çoklu dosya projeleri için minifikasyonu CI/CD pipeline'ınıza entegre edin.

Node.js

Terser (genel durum)

npx terser src/app.js -o dist/app.min.js -c ecma=2020,passes=2 -m

Güçlü boyut küçültme için iki sıkıştırma geçişi ve tanımlayıcı bozma.

Ayrılmış isimler ve drop_console ile Terser

npx terser src/app.js -o dist/app.min.js -c passes=2,drop_console=true -m reserved=["React","ReactDOM"] --keep-fnames

Önemli global değişkenleri koruyun, konsol çağrılarını kaldırın ve hata ayıklama için fonksiyon isimlerini saklayın.

Linux/macOS/Windows

esbuild (çok hızlı)

npx esbuild src/app.js --minify --target=es2018 --outfile=dist/app.min.js

Paketleme ve minifikasyonu tek, son derece hızlı bir adımda gerçekleştirin.

SWC (Rust tabanlı)

npx swc src -d dist --minify

Yüksek performanslı bir Rust motoruyla derleme ve minifikasyon.

Yaygın Kullanım Senaryoları

Web Performansı & Temel Web Metrikleri

  • Daha hızlı LCP ve TTI için JavaScript aktarım boyutunu küçültün
  • Dağıtım öncesi hata ayıklama yorumlarını ve günlük kayıtlarını temizleyin
  • gzip/brotli sıkıştırması öncesi istemci tarafı paketlerini küçültün
/* minify edilmiş çıktıda kaldırılacak yalnızca derleme yorumu */

CI/CD ve Sürüm Otomasyonu

  • Derleme pipeline'ınızın son adımı olarak JS'yi minify edin
  • CDN'ler için küçük, önbellek dostu paketler hazırlayın
  • HTML/CSS minifikatörleriyle birlikte üretime hazır varlıklar oluşturun

Bileşenler, Yerleştirmeler & Deneyler

  • Etiket yöneticileri aracılığıyla kompakt kod parçacıkları gönderin
  • Üçüncü taraf sayfalara küçültülmüş bileşenler yerleştirin
  • Kritik betiklerde farklı sıkıştırma stratejileriyle denemeler yapın

❓ Frequently Asked Questions

JavaScript'i küçültmek kodumun çalışma şeklini değiştirir mi?

Güvenli varsayılanlarla, çalışma zamanı davranışı aynı kalmalıdır. Üst düzey optimizasyonlar, tanımlayıcı ad bozma veya konsol çağrılarını atama gibi agresif seçenekler, kodunuz isimlere, yan etkilere veya günlüğe kaydetmeye dayanıyorsa davranışı etkileyebilir. Her zaman küçültülmemiş bir sürüm saklayın ve küçültülmüş derlemelerde testler çalıştırın.

Bu araç doğrudan TypeScript veya JSX'i işler mi?

Küçültücü düz JavaScript'i hedefler. TypeScript veya JSX için önce JavaScript'e derleyin (SWC, esbuild veya Babel ile) ve ardından oluşturulan JS kodunu küçültün.

JavaScript'im bir sunucuya yükleniyor mu?

Hayır. Tüm işlemler tamamen tarayıcınızda istemci tarafı kod kullanılarak gerçekleşir. Kaynak kodu herhangi bir uzak sunucuya gönderilmez, bu da özel/tescilli betikler için idealdir.

JavaScript dosyam ne kadar büyük olabilir?

Sorunsuz tarayıcı deneyimi için, bu çevrimiçi araçta dosyaların yaklaşık 1 MB'a kadar olmasını öneririz. Daha büyük paketler ve tekrarlanan küçültme işlemleri, derleme işlem hattınıza entegre edilmiş CLI araçlarıyla daha iyi yönetilir.

Biçimlendirme ve küçültme arasındaki fark nedir?

Biçimlendirme kodu daha okunabilir yapar (tutarlı girintileme ve boşluk). Küçültme kodu daha küçük yapar (boşlukları, yorumları ve gereksiz kodları kaldırarak). Bu araç her ikisi için de aynı çekirdek bileşeni paylaşır: okunabilirlik için Biçimlendirme eylemini, üretim paketleri için Küçültme eylemini kullanın.

Pro Tips

Best Practice

Birçok kütüphanede ek ölü kod temizliğini etkinleştirmek için paketleyicinizde NODE_ENV=production (veya eşdeğerini) tanımlayın.

Best Practice

Küçültülmemiş kaynakları (ve büyük uygulamalar için kaynak haritalarını) sürüm kontrolünde tutun ve üretimde yalnızca küçültülmüş varlıkları sunun.

Best Practice

window veya globalThis üzerindeki genel API'leri korumak için ad bozma sırasında ayrılmış isimler kullanın.

Best Practice

Küçültmeyi, CDN veya sunucu düzeyinde gzip veya brotli ile birleştirerek çarpıcı boyut tasarrufu elde edin.

Additional Resources

Other Tools