JSON Stringify

Zmieniaj JSON w string gotowy do wklejenia do kodu, URL lub pola tekstowego i w razie potrzeby przywracaj go z powrotem do czytelnego JSON.

Powiązane Rekomendacje

Czym jest JSON Stringify i osadzanie JSON jako string?

JSON Stringify to serializacja obiektu lub tablicy JSON do postaci tekstowej. W JavaScript najczęściej używa się do tego `JSON.stringify()`.

W praktyce wynik serializacji często trzeba jeszcze osadzić w kodzie źródłowym, kolumnie tekstowej bazy danych, parametrze URL albo w innym JSON jako wartość string. W takich sytuacjach trzeba dodatkowo escapować cudzysłowy, znaki nowej linii i backslashe.

To narzędzie automatyzuje ten krok: wykonuje standardowe stringify, dodaje zewnętrzne cudzysłowy i escapuje znaki specjalne. Tryb Parse robi operację odwrotną i przywraca czytelny JSON. Wszystko odbywa się lokalnie w przeglądarce.

Przypadki użycia

  • Zamiana JSON na string literal dla JavaScript / Java / Python / Go
  • Osadzanie odpowiedzi API jako string w innym JSON
  • Zapisywanie JSON jako tekst w kolumnach TEXT lub w Redis
  • Przekazywanie JSON przez query string lub nagłówki URL
  • Przywracanie escapowanego JSON z logów i konfiguracji do czytelnej postaci

Jak Używać

  1. Wklej JSON lub string po lewej stronie albo użyj przykładu / wczytania pliku
  2. Wybierz Stringify lub Parse i ustaw format wyjścia, jeśli to potrzebne
  3. Sprawdź wynik po prawej stronie i skopiuj go do kodu, dokumentu lub konfiguracji
  4. W razie potrzeby pobierz `stringified.txt` albo `parsed.json`

Funkcje

  • Dwa tryby pracy: Stringify i Parse do konwersji w obie strony
  • Automatyczne escapowanie: poprawnie obsługuje cudzysłowy, backslashe, nowe linie i taby
  • Różne formaty wyjścia: string z cudzysłowami, sformatowany JSON albo kompaktowa wersja jednoliniowa
  • Wygodne osadzanie w kodzie: wynik łatwo wkleić do JavaScript, Java, Python i Go
  • Przydatne dla URL i baz danych: łatwo zapisać JSON jako tekst w polach i payloadach
  • Lokalne przetwarzanie: serializacja i przywracanie JSON odbywają się bez wysyłania danych na serwer

Przykłady kodu

JavaScript: zamiana JSON na string do osadzenia

javascript
const data = { name: 'Alice', age: 30, tags: ['dev', 'writer'] };
const json = JSON.stringify(data, null, 2);
const embedded = '"' + json
  .replace(/\\/g, '\\\\')
  .replace(/"/g, '\\"')
  .replace(/\n/g, '\\n')
  .replace(/\r/g, '\\r')
  .replace(/\t/g, '\\t') + '"';

Python: ponowne escapowanie przez json.dumps

python
import json

data = {"name": "Alice", "age": 30}
pretty = json.dumps(data, indent=2, ensure_ascii=False)
embedded = json.dumps(pretty)
restored = json.loads(json.loads(embedded))

jq: zrób string z pliku JSON

bash
jq -Rs . data.json

echo '"{\"name\":\"Alice\"}"' | jq -r .

Często Zadawane Pytania

Czy JSON Stringify to to samo co JSON.stringify()?

Podstawowa serializacja jest taka sama, ale to narzędzie dodatkowo dodaje zewnętrzne cudzysłowy i escapuje znaki specjalne pod osadzanie.

Czym różni się od JSON Escape?

JSON Stringify działa na całym obiekcie JSON, a JSON Escape tylko na zwykłym stringu i jego znakach specjalnych.

Czy po Stringify JSON stanie się nieczytelny?

Nie. W trybie Pretty zachowasz wcięcia i podziały linii, więc wynik nadal jest czytelny.

Czy Parse przywróci `\n` i `\"`?

Tak, jeśli wejście jest poprawnie escapowane. Narzędzie zdejmie zewnętrzne cudzysłowy i odtworzy znaki specjalne.

Czy wynik mogę wkleić bezpośrednio do URL?

Dla warstwy JSON tak, ale do URL nadal warto użyć np. `encodeURIComponent`.

Czy nadaje się do zagnieżdżonego JSON?

Tak. Możesz zamienić wewnętrzny JSON w string i umieścić go jako wartość pola w zewnętrznym JSON.

Czy mogę zapisać wynik do pliku?

Tak. Tryb Stringify zapisuje `stringified.txt`, a Parse zapisuje `parsed.json`.

Czy mój JSON trafia na serwer?

Nie. Wszystko dzieje się lokalnie w przeglądarce, więc narzędzie nadaje się też do wrażliwych danych.

Rozwiązywanie problemów

Stringify pokazuje błąd Invalid JSON

Najczęściej winne są trailing comma, pojedyncze cudzysłowy, klucze bez cudzysłowów albo komentarze.

Po Parse wynik nie jest JSON-em

Może brakować zewnętrznych cudzysłowów albo backslashe zostały uszkodzone. Sprawdź wejściowy string.

Po wklejeniu do kodu pojawia się SyntaxError

Ręczna edycja cudzysłowów i backslashy łatwo psuje wynik. Najbezpieczniej kopiować output narzędzia bez zmian.

Duży JSON spowalnia przeglądarkę

Przy kilku MB zużycie pamięci rośnie. Dla dużych plików lepiej użyć Node.js albo Pythona.

Polskie znaki lub emoji nie są zamienione na `\uXXXX`

To normalne. JSON może przechowywać Unicode bezpośrednio. Jeśli potrzebujesz `\uXXXX`, dodaj osobne przetwarzanie po wygenerowaniu wyniku.

Słownik

JSON.stringify
Wbudowana metoda JavaScript do serializacji wartości JS do stringa JSON.
JSON.parse
Wbudowana metoda JavaScript do zamiany stringa JSON z powrotem na obiekt lub tablicę.
Serialize
Proces zamiany struktury danych z pamięci na tekst możliwy do zapisania lub przesłania.
Deserialize
Proces odwrotny: przywrócenie struktury danych ze stringa.
Escape
Dodanie backslasha przed znakami specjalnymi, aby nie zepsuć zewnętrznej składni.
String Literal
Stała tekstowa w kodzie źródłowym otoczona cudzysłowami.
Double-Escape
Ponowne escapowanie już escapowanego stringa podczas osadzania go w kolejnej warstwie.
URL Encode
Kodowanie znaków specjalnych URL do postaci `%XX`; to osobny krok po escapowaniu JSON.

Tabela escapowania znaków w JSON Stringify

Znak źródłowyPo StringifyNazwaOpis
"\"CudzysłówMusi być escapowany, aby nie zamknąć zewnętrznego stringa
\\\BackslashSam znak escapowania też trzeba podwoić
Nowa linia\nNewlinePotrzebne przy osadzaniu wielowierszowego tekstu
Tab\tTabEscapowanie znaku sterującego
CR\rCarriage ReturnCzęść zakończenia linii Windows
//SlashZwykle może pozostać bez zmian

Różnica między JSON.stringify a tym narzędziem

NarzędzieWejścieWyjścieTypowy scenariusz
JSON.stringify()Obiekt JSZwykły string JSONAPI, pliki, standardowa serializacja
Tryb StringifyObiekt JSONString do osadzenia z cudzysłowami i escapowaniemKod, baza danych, URL, zagnieżdżony JSON
Tryb ParseEscapowany stringStandardowy JSONOdtwarzanie JSON z logów i bazy danych
JSON EscapeZwykły tekstString tylko ze znakami specjalnymi po escapowaniuBezpieczne osadzanie fragmentów tekstu

Authoritative References