JS Düzeltme Aracı
Bozuk JavaScript kodunu otomatik onarın
JS Düzeltme Aracı Nedir?
Bir doküman sayfasından ya da sohbet dizisinden bir parça yapıştırıyorsunuz, parser patlıyor. ASI’nin işe yaramadığı yerde bir noktalı virgül eksik. Bir süslü parantez yutulmuş. Bir dize satır sonunda kapanmadan akıp gidiyor. Bu araç bozuk JavaScript’i alır ve motorun gerçekten kabul edeceği bir şey verir.
JavaScript’in dil bilgisi TC39 ECMAScript spesifikasyonu ile tanımlanır ve her tarayıcı ile Node.js kodunuzu ayrıştırırken bunu izler. MDN’nin JavaScript referansı bu kuralları sade bir dille açıklar. Otomatik Noktalı Virgül Ekleme (ASI) bu dil bilgisinin parçasıdır — çoğu zaman pratiktir, beklenmedik bir satır sonu kodunuzun anlamını sessizce değiştirdiğinde acı vericidir. Bu düzeltici sözdizim seviyesindeki kırılmaları hedefler; tam yeniden biçimlendirme istiyorsanız çıktıyı sonradan Prettier’dan geçirin.
Her şey tarayıcınızdan backend’imize gidip geri döner. Dosyaya ESLint çevirmeden önce ilk geçiş olarak kullanın — kod en azından ayrıştırılabildiğinde çoğu kural ihlali çok daha okunaklı olur.
JS Düzeltme Aracı Nasıl Kullanılır
Üç adım. Her adım, bu sayfadaki gerçek düğmeleri ve panelleri kullanır.
Bozuk JS yapıştırın veya örnek yükleyin
Bozuk JavaScript’inizi sol editöre yapıştırın. Aracın kaldırdığı türden bir girdiyi görmek için Örnek JS’ye tıklayın. Klasik kargaşa şuna benzer — eksik noktalı virgüller, bir nesne değişmezinde eksik virgül, dengesiz bir süslü parantez, dize olması gerekirken tırnaksız yazılmış bir değer:
function processOrder(customer) {
const order = { id: "ORD-9001" customer: customer, status: pending }
return order
Araç eksik noktalı virgülleri, `{`/`}`, `[`/`]`, `(`/`)` dengesizliklerini, nesne ve dizilerde eksik virgülleri, tırnaksız değerleri, kapatılmamış dizeleri ve garip operatör birleşimlerini ele alır.
"JS’yi Düzelt!!" düğmesine tıklayın
Yeşil JS’yi Düzelt!! düğmesine basın. Kod backend’e gider, onarılır ve ayrıştırılabilir olarak geri döner. İşlem sırasında yükleme göstergesi görünür — genellikle bir iki saniye.
Çıktıyı inceleyin
Sağ panel düzeltilmiş kodu gösterir. Anlam, girdinize mümkün olduğunca yakın kalır — yalnızca sözdizim onarılır. Çıktıyı kopyalayın, editörünüze geri yapıştırın ve biçimlendiriciniz veya linter’ınızla geçirin.
Bunu Gerçekten Ne Zaman Kullanırsınız
Yapıştırılan parçaları kurtarmak
Slack dizisinden, StackOverflow yanıtından veya PDF’ten gelen kod, yolda sıklıkla tırnak işaretlerini, satır devamlarını ya da koca noktalama işaretlerini kaybeder. Elle düzenlemeye başlamadan önce buradan geçirin.
Çıkarılmış küçültülmüş kodu hata ayıklamak
Bir üretim paketinden bir yığın izi okuyup incelemek için bir parça aldığınızda, onu ayrıştırılabilir hale getirmek savaşın yarısıdır. Önce sözdizimini onarın, sonra güzelleştirin, en son inceleyin.
ASI sürprizleri
Otomatik noktalı virgül eklemeye dayanan kod ince yollarla bozulabilir — örneğin `return`’dan sonra satır sonu gelirse sessizce `undefined` döner. Araç parser’ın istediği yerlere açık noktalı virgüller ekler.
Yapay zekanın ürettiği taslakları temizlemek
LLM tarafından üretilen parçalar zaman zaman bir süslü parantezi düşürür ya da bir virgülü atlar. Sonucu Babel veya paketleyicinize göndermeden önce sözdizimini burada onarın.
Sık Sorulan Sorular
Kodum bir yerde saklanıyor mu?
Yapay zekâ modelinin onarabilmesi için backend’imize gönderilir, sonuç size geri verilir. Kodu günlüklemeyiz, eğitime kullanmayız ve bu tek isteği onarmak dışında hiçbir amaçla kullanmayız.
Hangi tür hataları düzeltir?
Sözdizim seviyesindeki şeyler: eksik noktalı virgüller, dengesiz süslü/köşeli/yuvarlak parantezler, nesne ve dizilerde eksik virgüller, dize beklenirken tırnaksız değerler, kapatılmamış dize ve şablon değişmezleri, biçimsiz operatör birleşimleri. Mantık hataları (yanlış koşul, off-by-one) kapsam dışı.
Kodumun anlamı değişir mi?
Değiştirmemek için elinden geleni yapar. Hedef anlamı korumak ve yalnızca dil bilgisini onarmak. Yorum gerektiren sınır durumlar var (açıkça dize olması gereken yerde tırnaksız bir token gibi) — bu durumlarda araç en olası niyeti seçer. Çıktıya her zaman göz atın.
TypeScript destekleniyor mu?
TypeScript’e özgü sözdizim — tip ek açıklamaları, jenerikler, dekoratörler — kapsam dışı. TS’nin JS alt kümesi (sınıflar, async/await, şablon değişmezleri, modern dizi yöntemleri) sorunsuz ayrıştırılır. Tam bir TS dönüşümü için JS’den TypeScript’e aracımıza bakın.
Bunu üretim kodunda kullanabilir miyim?
Bu bir sözdizim onarma aracı, linter veya tip denetleyicisinin yerini almaz. Çıktıyı bir başlangıç noktası olarak ele alın — yayına almadan önce ESLint ve test paketinizden geçirin.
Hiç onaramadığı kod var mı?
Bazen. Girdi çok parçalıysa veya orijinal niyet gerçekten belirsizse (birden çok makul onarım), araç birini seçer — ancak sonuç sözdizim olarak doğru, anlam olarak yanlış olabilir. Özellikle birkaç satırlık girdilerde çıktıyı her zaman gözden geçirin.
İhtiyaç Duyabileceğiniz Diğer JavaScript Araçları
Sözdizimini onarmak yalnızca ilk adım. Sitedeki diğer JavaScript araçları: