Bepul YAML dan JSON ga Konvertor

YAML ni JSON ga va JSON ni YAML ga, ikkala yo'nalishda ham konvertatsiya qiling. Istalgan formatda joylashtiring va darhol konvertatsiya qilingan natijani oling — serverga yuklash talab qilinmaydi.

Yuklangandan keyin oflayn ishlaydi
JSON natijasi
Natija shu yerda ko'rinadi…

Qanday ishlaydi

O'girishning har ikki yo'nalishi — YAML'dan JSON'ga va JSON'dan YAML'ga — sahifaga qurilgan qo'lda yozilgan tahlilchi va chiqaruvchi yordamida to'liq brauzeringizda ishlaydi, uchinchi tomon YAML kutubxonasi va server aralashmasdan. Mantiq xaritalash, ketma-ketlik, skalyar, tirnoqlangan satrlar va inline izoh kesishni boshqaradigan yagona TypeScript modulida (lib/yamljson.ts) yashaydi.

  1. 1
    Kirish qator-bo-qator oldindan qayta ishlanadi
    YAML kirishi uchun, tahlilchi matnni qatorlarga bo'ladi, inline izohlarni kesib tashlaydi (satrlar ichida # ni kesib tashlashning oldini olish uchun tirnoq holatini kuzatib), chekinish chuqurligini o'lchaydi va bo'sh qatorlarni tashlab yuboradi — har qanday tahlil boshlanishidan oldin tuzilgan token ro'yxatini quradi.
  2. 2
    Rekursiv-tushish tahlilchisi ma'lumot daraxtini quradi
    Tahlilchi tuzilmani aniqlash uchun chekinish darajasidan foydalanib token ro'yxatini aylanib o'tadi. U ketma-ketlik elementlarini (- value), xaritalash kalitlarini (key: value) va ichma-ich bloklarni taniydi. Skalyarlar null, mantiqiy qiymatlar, butun sonlar (007 kabi yetakchi-nolli qiymatlarni jimgina ma'lumot buzilishidan qochish uchun rad etib) va suzuvchi sonlarni boshqaradigan turlangan majburlash qadamidan o'tadi — YAML 1.1 yalang'och so'zlari yes, no, on va off ni mantiqiy qiymatlarga o'girish o'rniga satr sifatida saqlaydigan ixtiyoriy rejim bilan.
  3. 3
    Qo'llab-quvvatlanmaydigan YAML xususiyatlari jimgina tashlanmasdan belgilanadi
    Chiqish chiqarishdan oldin, asbob langarlarni (&name), taxalluslarni (*name), birlashtirish kalitlarini (<<:), blok skalyarlarini (| va >), ko'p-hujjat belgilarini (---) va takroriy xaritalash kalitlarini skanerlaydi. Bularning har biri nozik noto'g'ri JSON ishlab chiqarish o'rniga ko'rinadigan ogohlantirishni ishga tushiradi.
  4. 4
    JSON serializatsiya qilinadi yoki YAML chiqariladi, so'ng mavjud qilinadi
    YAML→JSON uchun, tahlil qilingan qiymat tanlagan chekinishingiz (2 bo'shliq, 4 bo'shliq, tab yoki kichraytirilgan) bilan JSON.stringify'ga beriladi. JSON→YAML uchun, maxsus chiqaruvchi tahlil qilingan JavaScript qiymatini aylanib o'tadi va chekingan YAML ishlab chiqaradi, satr skalyarlarini faqat kerak bo'lganda qochiradi (masalan, :, # o'z ichiga olgan yoki zaxiraviy so'zga o'xshaydigan qiymatlar). Chiqish siz yozayotganda darhol paydo bo'ladi va nusxalanishi yoki yuklab olinishi mumkin.

Tegishli asboblar

Ko'p so'raladigan savollar