JSON Toolkit

FAQ k používání nástrojů: data, soubory a export

Shrnutí: Nahrávají se data, jak velký soubor funguje, ukládá se něco lokálně, proč se čínština mění na escape sekvence: deset otázek, které vysvětlují skutečné hranice online nástroje pro JSON.

Začátečník~10 min čteníPublikováno 2026-10-30Aktualizováno 2026-10-30
Titulní obrázek článku FAQ k používání nástrojů

Stručně: parsování, formátování, diff a dotazy běží zcela ve vašem prohlížeči a fungují i offline; po zpracování citlivých dat vymažte historii v localStorage; a nad 10 MB přejděte k nástrojům pro streamování na příkazovém řádku, místo abyste soubor vlepovali do prohlížeče.

Než vložíte citlivý payload do online nástroje, vězte, kam jde. Tento článek pokrývá jen chování nástroje za běhu, nikoli syntaxi.

1. Data a soukromí

Nahrává online formátovač JSON moje data na server?

Ne. Parsování, formátování, minifikace, diff i dotazy probíhají v prohlížeči a stránka nikdy neposílá to, co vložíte, na aplikační server.

Abyste zjistili, zda online nástroj nahrává data, nemusíte číst prohlášení o soukromí; panel Network v prohlížeči stačí:

  1. Otevřete nástroje pro vývojáře, přepněte na panel Network a zapněte uchovávání logu;
  2. Vložte JSON a klikněte na „Format“;
  3. Sledujte, zda se objeví nový požadavek XHR nebo fetch a zda jeho tělo obsahuje váš obsah.

U skutečně lokálního nástroje tento krok ukáže jen požadavky na statické soubory. Naopak, pokud jediná formátovací akce vyprodukuje POST /api/format s tělem, které je váš původní text, data už prohlížeč opustila, ať stránka tvrdí cokoli.

Každý nástroj na tomto webu je čistě frontendová implementace a výstup sestavení neobsahuje žádné serverové API. Po přechodu offline refresh, který zasáhne do cache, stále funguje, což je také nejpřímější způsob, jak zjistit, zda je něco „plně lokální“.

Můžu ho používat i offline?

Ano, pokud byla stránka jednou načtena.

Soubory webu se při první návštěvě stáhnou do cache prohlížeče, takže i bez sítě poté formátování, minifikace, převod JSON5 a dotazy JSONPath fungují. Selhávají jen funkce závislé na síti, například kontrola nové verze nebo stahování desktopového instalátoru.

Offline test je rovněž dobrý způsob, jak ověřit, že „data nikdy neodcházejí“: pokud se všechno rozbije ve chvíli, kdy odpojíte síť, každá akce komunikovala se serverem.

Ukládají se nějaká data lokálně? Jak je vymazat?

Ano, ale jen v localStorage aktuálního prohlížeče, a jen historie a nastavení uživatelského rozhraní.

  • Historie: posledních 100 zpracovaných záznamů v obráceném chronologickém pořadí, používaná k vyvolání dříve vložených dat;
  • Nastavení UI: téma, jazyk, předvolby odsazení a podobně;
  • Neukládá se: soubor samotný, záznamy o nahrání ani nic nesoucí identitu.

Vymazat je lze třemi způsoby, od nejužšího k nejširšímu:

Metoda Rozsah Kdy použít
„Clear history“ na stránce historie Smaže jen historii, nastavení zachová Po zpracování citlivých dat
Spuštění localStorage.clear() v nástrojích pro vývojáře Všechna lokální data tohoto webu Diagnostika abnormálního nastavení
„Clear browsing data“ prohlížeče pro tento web Cookies, cache a úložiště společně Před použitím sdíleného počítače

Při zpracování produkčních dat na sdíleném počítači vymažte po dokončení historii, místo abyste jen zavřeli záložku – localStorage po zavření záložky nezmizí.

Proč se čínské znaky změnily na \u4e2d\u6587?

Protože funkce „escape“ převádí znaky mimo ASCII na Unicode escape sekvence. Je to úmyslné chování, nikoli mojibake.

\u4e2d je kódový bod znaku 中 (U+4E2D). Obě formy jsou v JSON sémanticky shodné a parsují se do stejného řetězce:

{
  "escaped": "\u4e2d\u6587",
  "plain": "中文"
}

Kdy je escapování potřeba? Při vkládání JSON do starého systému, který přijímá jen ASCII, při zápisu do HTTP hlavičky nebo při vnoření do jiného řetězce. Kdy není potřeba? Většina přenosu přes API a ukládání souborů ho nepotřebuje; přímé uložení čínštiny jako UTF-8 šetří bajty – jeden čínský znak má 3 bajty, a po escapování 6 bajtů.

Pokud vidíte, že se čínština změnila na \u4e2d, nejprve zkontrolujte, zda jste neklikli na tlačítko „Escape“, místo abyste podezírali rozbité kódování.

2. Soubory a velikost

Jakou velikost souboru to podporuje?

Na straně prohlížeče neexistuje tvrdý limit; skutečné limity přicházejí ze tří míst:

Fáze Hrubé úzké hrdlo Projev
Vložení do textového pole 1–5 MB Vstup po vložení zleniví, zpoždění kurzoru
JSON.parse 50–100 MB Hlavní vlákno se zablokuje na sekundy, stránka neodpovídá
Vykreslování stromu 10k–20k uzlů Vynechávání snímků při rozbalování, scrollování zamrzne

Jinými slovy, soubor o desítkách MB „lze parsovat“, ale „nelze používat“. Když taková data skutečně potřebujete zpracovat, správný krok není hledat výkonnější online nástroj, ale přejít ke streamování (viz FAQ k výkonu a bezpečnosti).

Pravidlo palce: pod 2 MB zůstává online nástroj plynulý; 2–10 MB znamená smířit se s jedním nebo dvěma zpožděními; nad 10 MB preferujte lokální skript.

Prohlížeč po vložení zamrzne. Co teď?

Nejprve neobnovujte stránku – obnovení ztratí obsah a budete muset vložit znovu. Zachraňte to v tomto pořadí:

  1. Počkejte 10–30 sekund. Ve většině případů hlavní vlákno parsuje nebo vykresluje a zotaví se samo;
  2. Jakmile se zotaví, okamžitě přepněte do zobrazení „Minify“ nebo sbalte strom, abyste snížili počet DOM uzlů;
  3. Zkopírujte obsah do lokálního souboru a přejděte k příkazovému řádku:
# Podívejte se jen na strukturu prvních 100 řádků, abyste nenačítali všechno
head -c 200000 data.json | jq . | head -n 100

# Spočítejte záznamy streamovacím nástrojem, bez načtení do paměti
jq -c '.items[]' data.json | wc -l

Až příště narazíte na velký soubor, nejprve spusťte wc -c, abyste viděli počet bajtů, a poté se rozhodněte, zda ho vložit do prohlížeče.

Proč se formátování po vložení nezměnilo?

Tři časté příčiny, seřazené podle četnosti:

  1. Vstup je už zminifikovaný a nemá syntaktické chyby: formátování jen upravuje odsazení, takže pokud původní text skutečně má dva řádky, bude mít dva řádky i potom – zalomení řádků uvnitř řetězců se neexpandují;
  2. Obsah není JSON: například jste vložili objektový literál JavaScriptu (klíče bez uvozovek, jednoduché uvozovky), a parser místo formátování nahlásí chybu;
  3. Klikli jste na špatné tlačítko: minifikace a formátování jdou opačným směrem a minifikace odstraňuje všechno odsazení.

Jak to poznat: podívejte se na počet znaků v pravém horním rohu výstupní oblasti. Po formátování by se měl zvýšit (přibylo odsazení a zalomení řádků); pokud se naopak snížil, spustili jste minifikaci.

3. Vstup a výstup

Jak exportovat výsledek do souboru?

Tři způsoby, seřazené podle spolehlivosti:

Metoda Akce Kdy použít
Tlačítko pro stažení Klikněte na „Download“ a vytvoří se soubor .json Velké výsledky, které je třeba archivovat
Kopírování do schránky Klikněte na „Copy“ Malé výsledky, které vlepíte zpět do kódu
Ruční označení a kopírování Označte výstupní oblast a stiskněte Ctrl/Cmd + C Záložní řešení, když tlačítko pro kopírování selže

Stažený soubor je ve výchozím nastavení kódován v UTF-8 bez BOM. To je důležité: JSON s BOM se v mnoha parserech rovnou rozbije (viz část o BOM v FAQ k syntaxi a formátům).

Je podporován JSON5 a JSONC?

Ano, ale rozlišujte „parsování“ a „výstup“.

  • Na vstupu můžete vložit JSON5 (jednoduché uvozovky, klíče bez uvozovek, komentáře, koncové čárky, hexadecimální čísla) nebo JSONC (jen komentáře);
  • Na výstupu můžete převést do standardního JSON, nebo standardní JSON převést zpět do JSON5, aby se ruční úpravy zjednodušily.

Při překračování systémů vždy vypisujte standardní JSON. JSON5 je dialekt pro lidi píšící konfiguraci; tělo požadavku s Content-Type: application/json, které obsahuje komentáře nebo koncové čárky, server obvykle odmítne.

4. Prostředí a kompatibilita

Funguje to na telefonu?

Ano. Rozhraní se přeskládá do jednoho sloupce a formátování, minifikace, diff i JSONPath zůstávají.

Práce s velkými soubory na telefonu je však špatný zážitek: softwarová klávesnice zakrývá obsah, výběr textu je obtížný a prohlížeč může při přepnutí aplikací stránku zahodit a obsah ztratit. Přijatelné jako nouzové řešení, ale každodenně to dělejte na desktopu.

Proč se stejný soubor v Chrome otevře, ale v Safari hlásí chybu?

Obvykle to není rozdíl prohlížečů, ale rozdíl kódování. Láďte v tomto pořadí:

  1. BOM: UTF-8 uložený Poznámkovým blokem Windows obsahuje BOM, který některé parsery netolerují;
  2. Konce řádků: míchání CRLF a LF JSON samotný neovlivní, ale posouvá hlášená čísla řádků chyby, takže to vypadá jako „chybná pozice chyby“;
  3. Neviditelné znaky: text zkopírovaný z webové stránky může obsahovat mezery s nulovou šířkou (U+200B), neviditelné pro oko, ale dost na to, aby rozbily párování klíčů.

Jediný příkaz to prozradí:

# Podívejte se na hex prvních 16 bajtů; úvodní EF BB BF znamená přítomný BOM
head -c 16 data.json | xxd

5. Rychlý přehled

Otázka Závěr
Nahrává data Ne, vše se zpracovává lokálně v prohlížeči a funguje offline
Kde jsou data uložena localStorage, jen historie a nastavení, nikdy soubory
Jaká velikost souboru je rozumná Plynulé pod 2 MB; nad 10 MB přejděte k příkazovému řádku
Čínština se změnila na \u Klikli jste na escape; ekvivalentní, ale objemnější a obvykle zbytečné
Zamrzlo, co teď Počkat na zotavení → sbalit strom → zkopírovat ven a použít jq
Je export bez BOM Ano, UTF-8 bez BOM
Jsou podporovány komentáře JSON5/JSONC na vstupu; na výstupu standardní JSON