JavaScript'ten JSON'a Dönüştürücü
JavaScript object literal veya array yapıştırın. Geçerli JSON geri gelsin.
Bu araç ne yapıyor
Bir config dosyasından, bir seed script'inden veya debugger'dan bir JavaScript object literal kopyaladınız ve şimdi bunu gerçek JSON olarak lazım. Ama iş şu: JS tırnaksız key'lere, tek tırnaklara, sondaki virgüllere, undefined'a, yorum satırlarına ve new Date(...)'a izin verir — hiçbiri JSON'da yasal değil. Hepsini buraya yapıştırın, Convert'e basın, JSON.parse'den tek bir kırmızı çizgi almadan geçecek JSON geri gelsin.
JSON.stringify'ın uyguladığı kurallarla aynı: key'ler çift tırnağa alınır, tek tırnaklı string'ler çift tırnağa çevrilir, sondaki virgüller düşer, yorumlar silinir, undefined değerler yok olur (native stringify davranışıyla aynı), NaN ve Infinity null olur ve Date nesneleri RFC 8259'a göre ISO-8601 string'lerine döner. ECMAScript'in sayı formatlama kuralları korunur, yani 1e3 hâlâ sayı, 0x1F ise 31 olur.
Node'dan yapıştırdığınız şeyleri de halleder — module.exports = {...}, ES export default {...} ya da sade bir const config = {...} ataması. Computed key'ler, shorthand property'ler ({ name }) ve spread ({ ...defaults, env: "prod" }) hepsi çözümlenmiş hâline açılır. İç içe object'ler ve array'ler olduğu gibi geçer.
Nasıl kullanılır
Beş satır da yapıştırsanız bir config modülü de yapıştırsanız, üç adım.
JavaScript kodunuzu yapıştırın (ya da örneği deneyin)
Kodu soldaki editöre bırakın. Bir object literal, bir object array'i, bir export statement veya bir const declaration — parser hepsinin üstesinden gelir. Gerçekçi bir örnek görmek için Load Sample'a tıklayın.
const, module.exports veya export default'u silmenize gerek yok. İstersen yorumları bırak — çıktıda temizleniyor. Kesin JSON tip eşleştirmesini tazelemek istersen MDN JSON referansına bak.
Convert'e basın
Yeşil Convert butonuna tıklayın. Araç JS'i parse eder, literal değerleri değerlendirir ve JSON.stringify(obj, null, 2)'in yapacağı şekilde serialize eder.
JSON'u kopyalayın
Sağ panelde her dilde temiz şekilde parse olan, güzel formatlanmış JSON göreceksiniz. Request body'nize, config dosyanıza ya da Jest snapshot'ınıza kopyalayın.
Ne zaman gerçekten işinize yarar
API request'i hazırlarken
Bir React veya Express dosyasından object literal'iniz var, Postman veya curl için JSON body lazım. Yapıştır, çevir, tamam.
Config'i JSON'a taşırken
<code>config.js</code>'ten JSON tabanlı bir config store'a mı geçiyorsunuz? Export'u yapıştırın, geçerli JSON'u alıp yerleştirin.
Test fixture ve mock
Jest testinde kullanılan inline bir object'i MSW, Playwright ya da mock server için bağımsız bir JSON fixture'a çevirin.
Log ve debugger çıktıları
Node REPL veya Chrome DevTools'un yazdırdığı bir değeri (JSON değil, JS object syntax'ı kullanırlar) kopyalayıp, aşağı akıştaki araçların gerçekten parse edebileceği bir şeye dönüştürün.
Sık sorulanlar
Tırnaksız key'ler ve sondaki virgüller çalışıyor mu?
Evet. Tırnaksız identifier key'leri çıktıda tırnağa alınır, tek tırnaklar çift tırnağa döner ve sondaki virgüller düşer — tam olarak ECMAScript'in izin verdiği ama JSON'un izin vermediği şeyler.
undefined, NaN, Infinity ve function'lara ne oluyor?
JSON.stringify ile aynı kurallar: undefined ve function değerleri object'lerden atılır, NaN ile Infinity null olur, Symbol düşürülür. Tam listeyi MDN JSON.stringify dokümanlarında bulabilirsiniz.
Date'ler serialize ediliyor mu?
Evet. new Date(...) değerleri ISO-8601 string'lerine ("2026-03-14T10:30:00.000Z") döner; Date.prototype.toJSON()'ın ürettiğiyle aynı format.
ES modülü ya da CommonJS export'u yapıştırabilir miyim?
Evet — export default { ... }, export const x = { ... } ve module.exports = { ... } hepsi tanınır. Araç export edilen değeri alıp onu çevirir.
Peki spread syntax ve computed key'ler?
İkisi de final object şekline çözümlenir. { ...defaults, env: "prod" } merge edilir ve key bir literal ise { [name]: value } { "actualName": value } olur.
Kodum saklanıyor mu?
Kod çevirme için backend'e gönderilir, kaydedilmez ya da loglanmaz. Hassas bir şey yapıştırıyorsanız önce bir gözden geçirin.
İşinize yarayabilecek diğer araçlar
JavaScript'ten JSON'a, bulmacanın sadece bir parçası. Birlikte iyi giden araçlar: