YAML til JSON konverter
Hurtig og sikker konvertering fra YAML til JSON. Perfekt til konfigurationsfiler og dataanalyse.
Hurtig og sikker konvertering fra YAML til JSON. Perfekt til konfigurationsfiler og dataanalyse.
YAML og JSON er tæt beslægtede formater - JSON er teknisk set en streng delmængde af YAML 1.2 - og konvertering mellem dem er normalt ligetil. YAML tilføjer menneskevenlige funktioner, som JSON mangler: kommentarer, strenge med flere linjer uden at undslippe, anker- og aliasreferencer, mere fleksible citater og indrykningsbaseret struktur, der ligner naturligt dokumentlayout. Dette gør YAML til det populære valg for konfigurationsfiler (Kubernetes-manifester, GitHub Actions-arbejdsgange, Docker Compose), mens JSON dominerer API-nyttelaster.
Konvertering af YAML til JSON betyder normalt at give afkald på YAML's menneskevenlige ekstramateriale i bytte for et format, som maskiner lettere analyserer, og det er lingua franca for HTTP API'er. Kommentarer slettes (JSON har ingen). Ankerreferencer opløses i deres referenceværdier. Flerlinjestrenge kollapser til standard JSON-strenge med indlejrede nylinjer.
Denne konverter analyserer YAML ved hjælp af js-yaml, det mest udbredte YAML-bibliotek i JavaScript. Output genereres ved hjælp af JSON.stringify med valgfri indrykning. Konverteringen håndterer al standard YAML 1.2-syntaks inklusive flow-stil, blok-stil, skalarer, sekvenser, mappings, ankre, aliaser og standard-tag-typerne.
De fleste API'er og mange programmeringsmiljøer forventer JSON. Konfigurationsfiler skrevet i YAML skal konverteres til JSON ved integration med kode eller tjenester, der kun accepterer JSON. Værktøj til JSON er også mere rigeligt: jq, JSON Path, JSON Schema og et bredt økosystem af validatorer og transformere antager alle JSON-input.
JSON er også utvetydig på måder, YAML ikke er. YAML's fleksibilitet skaber parsing-overraskelser - strenge som 'no', der parser som boolesk false i YAML 1.1, versionsstrenge, der parser som floats, indrykningsfejl, der producerer tavse strukturelle ændringer. Konvertering til JSON fryser dataene til en mindre tvetydig form.
Indsæt YAML, hent JSON.
js-yaml implementerer YAML 1.2 med valgfri understøttelse af YAML 1.1 quirks (problemet 'no'-as-false, oktale tal uden 0o-præfiks). Parseren producerer et JavaScript-objekttræ ved hjælp af native typer: tal, strenge, booleans, null, arrays og almindelige objekter.
JSON.stringify serialiserer objekttræet til JSON. Valgfri indrykning producerer smukt trykt output; uden det er resultatet kompakt single-line JSON. Særlige værdier (NaN, Infinity, undefined) er ikke gyldige JSON; konverteren tvinger dem til nul, hvor de er til stede.
Kantsager: YAML-tidsstempler bliver ISO-8601-strenge i JSON. YAML binære data (base64-kodet) bliver en streng. Ankre og aliaser opløses til duplikerede værdier i JSON, da JSON ikke har nogen referencesyntaks.