Hoppa till innehåll
100% lokalt

Ruby-hash till JSON

Konvertera Ruby-hash-literal eller pp/inspect-utmatning till JSON och omvänt.

Inmatning
Utmatning

Ruby-hash till JSON

Klistra in en Ruby-hash-literal eller utmatningen från `pp`, `.inspect` eller en Rails-konsol, och det här verktyget konverterar den till rent JSON. Det förstår båda hash-nyckelstilarna — den klassiska hash rocket (`:name => 'Alice'`, `'name' => 'Alice'`) och den moderna genvägen (`name: 'Alice'`), inklusive citerade genvägnycklar som `'full name': 'Alice Smith'`. Kapslade hash och matriser, enkel- och dubbeltecknade strängar, symboler (`:active` blir strängen "active"), heltal och decimaler med understreck som tusentalsseparatorer (`1_000_000`), `true`, `false`, `nil`, avslutande kommatecken, `#` kommentarer och flerlinjig inmatning hanteras alla, så du kan klistra in konsoloutmatning exakt som den skrevs ut.

Alternativen styr hur JSON ser ut. Växla mellan vacker utskrift med 2-mellanslag, 4-mellanslag eller tabbindraging, eller fäll ihop allt till en rad. Symbolnycklar kan återges som vanlig JSON-strängar eller behålla ett inledande kolon (`":name"`) som en påminnelse om var de kom från. Sortering av nycklar alfabetiskt gör två hash-värden lättare att jämföra. En Ruby `nil` kan bli JSON `null` eller helt utelämnas från utmatningen, beroende på vad ditt nedströmverktyg förväntar. Riktningsväxlingen vänder på allt: klistra in JSON och få tillbaka en Ruby-hash-literal, och välj genväg eller hash-rocket-syntax för de genererade nycklarna.

Detta täcker de vardagliga fallen med att felsöka en Rails-konsolsession, omvandla en hardkodad konfiguration hash till JSON för en frontend eller ett API-test, dokumentera vad en metod faktisk returnerar, eller så uppmuntra en Ruby-fixtur från en JSON-nyttolast som någon skickade till dig. När inmatningen inte är giltig Ruby namnger felet den exakta raden och kolumnen och vad som förväntades där, i stället för att låta dig gissa vilken parentes som saknas.

Allt körs lokalt i din webbläsare — hash eller JSON som du klistrar in och som kan innehålla verklig data från ett program som körs, laddas aldrig upp någonstans. Kopiera resultatet, hämta det som en .json-fil eller skicka det direkt till ett annat verktyg som JSON-formatteraren för att fortsätta arbetet.

FAQ

Vilken Ruby-hash-syntax förstår det här verktyget?
Båda stilarna — hash rocket (`:key => value`, `'key' => value`) och förkortad symbiolstil (`key: value`, inklusive citerade nycklar som `'full name': value`), plus kapslade hash och matriser, enkel- och dubbeltecknade strängar, symboler, nummer med understreck, `true`/`false`/`nil`, avslutande kommatecken, `#` kommentarer och flerlinjig inmatning.
Vad händer med Ruby-symboler?
Ett symbolväde som `:active` blir JSON-strängen "active". En symbol som används som hash-nyckel (oavsett om den skrivs som `:name => ...` eller förkortat som `name: ...`) blir en vanlig JSON-strängnyckel som standard, eller behåller ett inledande kolon (`":name"`) om du väljer det.
Hur hanterar verktyget Ruby's nil?
Välj om `nil` ska konverteras till JSON `null` (posten förblir med ett null-värde) eller helt utesluts, så nyckeln försvinner från utmatningen.
Kan jag konvertera åt andra hållet, från JSON tillbaka till Ruby hash?
Ja. Byt riktning till "JSON → Ruby hash" och välj om de genererade nycklarna ska använda hash-rocket (`:key => value`) eller förkortad (`key: value`) syntax.
Laddas min Ruby-kod eller JSON upp någonstans?
Nej. Parsing och konvertering körs helt i din webbläsare med JavaScript — ingenting som du klistrar in skickas till en server.