LibraTool logoLibraTool

Табдилдиҳандаи YAML ба JSON-и ройгон

YAML-ро ба JSON ва JSON-ро ба YAML дар ҳарду самт табдил диҳед. Дар ҳар формат гузоред ва натиҷаи табдилшударо фавран гиред — боркунии сервер лозим нест.

Ҳамин ки бор шуд офлайн кор мекунад
Натиҷаи JSON
Баромад дар ин ҷо пайдо мешавад…

Чӣ тавр он кор мекунад

Ҳарду самти табдил — YAML ба JSON ва JSON ба YAML — пурра дар браузери шумо бо таҳлилгар ва тавлидгари дастнавис, ки ба саҳифа сохта шудааст, кор мекунад, бидуни ягон китобхонаи тарафи-сеюми YAML ва ягон дахли сервер. Мантиқ дар як модули TypeScript (lib/yamljson.ts) зиндагӣ мекунад, ки харитабандиҳо, пайдарпайиҳо, скалярҳо, сатрҳои нохунакдор ва баровардани шарҳи inline-ро идора мекунад.

  1. 1
    Вуруд хат-ба-хат пеш-коркард карда мешавад
    Барои вуруди YAML, таҳлилгар матнро ба хатҳо тақсим карда, шарҳҳои inline-ро мебарорад (пайгирии ҳолати нохунак, то аз баровардани # дар дохили сатрҳо канорагирӣ шавад), умқи хатбандиро чен мекунад ва хатҳои холиро мепартояд — рӯйхати сохтории нишонаҳоро пеш аз оғози ягон таҳлил месозад.
  2. 2
    Таҳлилгари насли-рекурсивӣ дарахти маълумотро месозад
    Таҳлилгар рӯйхати нишонаро бо истифодаи сатҳи хатбандӣ барои муайян кардани сохтор тай мекунад. Он вурудиҳои пайдарпайи (- value), калидҳои харитабандӣ (key: value) ва блокҳои гирифторро мешиносад. Скалярҳо тавассути қадами мутобиқати навъдор мегузаранд, ки null, булиан, бутунҳо (радди қимматҳои сифр-пешрав ба монанди 007, то аз вайроншавии хомӯши маълумот пешгирӣ шавад) ва даҳдаҳиро идора мекунад — бо ҳолати ихтиёрие ки калимаҳои холиси YAML 1.1 ба монанди yes, no, on ва off-ро ҳамчун сатр нигоҳ медорад, на ба булиан табдил кунад.
  3. 3
    Хусусиятҳои дастгирнашудаи YAML тамғагузорӣ, на хомӯшона партофта мешаванд
    Пеш аз баровардани натиҷа, абзор лангарҳо (&name), тахаллусҳо (*name), калидҳои омезиш (<<:), скалярҳои блок (| ва >), нишонаҳои бисёр-ҳуҷҷатӣ (---) ва калидҳои харитабандии такрориро скен мекунад. Ҳар кадоме аз ин огоҳии намоёнро фаъол мекунад, на JSON-и нозукона нодурустро тавлид кунад.
  4. 4
    JSON сериализатсия карда мешавад ё YAML бароварда мешавад, сипас дастрас мешавад
    Барои YAML→JSON, қиммати таҳлилшуда ба JSON.stringify бо хатбандии интихобии шумо (2 фосила, 4 фосила, tab ё фишурда) супорида мешавад. Барои JSON→YAML, тавлидгари фармоишӣ қиммати JavaScript-и таҳлилшударо тай карда, YAML-и хатбандишударо тавлид мекунад, скалярҳои сатрро танҳо вақте лозим бошад дар нохунак мегузорад (масалан, қимматҳое ки :, # доранд ё ба калимаи захирашуда монанданд). Натиҷа фавран ҳангоми навиштан пайдо мешавад ва метавонад нусхабардорӣ ё боргирӣ шавад.

Абзорҳои марбут

Саволҳои зуд-зуд додашаванда