Co to jest Weboteka?
Weboteka to polska platforma z ponad 200 darmowymi narzędziami online, w tym kalkulatorami, generatorami i konwerterami. Wszystkie narzędzia działają w przeglądarce bez rejestracji.
Kompletny przewodnik po formacie JSON. Dowiedz się, jak strukturyzować dane, unikać błędów składniowych i konwertować JSON na inne formaty.
JSON (JavaScript Object Notation) to lekki format wymiany danych, który stał się standardem w komunikacji między serwerami, aplikacjami i urządzeniami. Choć nazwa sugeruje związek z JavaScript, JSON jest niezależny od języka programowania i obsługiwany przez praktycznie każdy nowoczesny język: Python, Java, PHP, Ruby, C#, Go i wiele innych.
JSON zyskał popularność, ponieważ jest jednocześnie czytelny dla ludzi i łatwy do parsowania przez maszyny. W przeciwieństwie do XML, który jest rozwlekły i skomplikowany, JSON używa prostej składni zbliżonej do obiektów w JavaScript. Statystyki pokazują, że ponad 90% nowoczesnych API RESTowych używa JSON jako formatu wymiany danych.
Ważne
JSON to format tekstowy, nie binarny. Dane JSON to zwykły tekst zakodowany w UTF-8, co oznacza, że możesz otworzyć plik JSON w dowolnym edytorze tekstowym. To ułatwia debugowanie, ale też oznacza, że JSON nie jest najefektywniejszy pod względem rozmiaru dla dużych zbiorów danych.
W tym przewodniku nauczysz się podstaw składni JSON, najczęstszych błędów, technik formatowania i konwersji do innych formatów. Niezależnie od tego, czy jesteś programistą, analitykiem danych, czy marketerem pracującym z API — zrozumienie JSON jest niezbędną umiejętnością w 2026 roku.
JSON obsługuje sześć podstawowych typów danych:
| Typ | Opis | Przykład |
|---|---|---|
| String | Tekst w cudzysłowach | "Jan Kowalski" |
| Number | Liczba (całkowita lub zmiennoprzecinkowa) | 42, 3.14, -99 |
| Boolean | Prawda/fałsz | true, false |
| Null | Brak wartości | null |
| Array | Upożądkowana lista wartości | [1, 2, 3] |
| Object | Kolekcja par klucz-wartość | {"imie": "Jan", "wiek": 30} |
Uwaga
JSON nie obsługuje komentarzy! W przeciwieństwie do JavaScript, nie możesz używać // ani /* */ w plikach JSON. Jeśli potrzebujesz komentarzy, umieść je w osobnym polu, np. "_komentarz": "To jest opis".
Obiekt JSON to zbiór par klucz-wartość zamknięty w nawiasach klamrowych {}:
Składnia:
{ "klucz1": "wartość1", "klucz2": "wartość2", "klucz3": 123 }
Zasady:
Przykład obiektu użytkownika:
{ "id": 1, "imie": "Anna", "nazwisko": "Nowak", "email": "anna.nowak@example.com", "aktywny": true, "wiek": 28 }
Tablica to uporządkowana lista wartości w nawiasach kwadratowych []:
Składnia:
[ "wartość1", "wartość2", "wartość3" ]
Przykład tablicy użytkowników:
[ { "id": 1, "imie": "Anna" }, { "id": 2, "imie": "Jan" }, { "id": 3, "imie": "Maria" } ]
Wskazówka
Tablice JSON zachowują kolejność elementów — to różni je od obiektów, gdzie kolejność kluczy teoretycznie nie ma znaczenia (choć większość parserów zachowuje kolejność).
JSON pozwala na nieograniczone zagnieżdżanie obiektów i tablic:
{ "firma": "Tech Solutions", "adres": { "ulica": "Polna 123", "miasto": "Warszawa", "kod": "00-001" }, "pracownicy": [ { "id": 1, "imie": "Jan", "stanowisko": "Developer", "umiejetnosci": ["JavaScript", "Python", "SQL"] }, { "id": 2, "imie": "Anna", "stanowisko": "Designer", "umiejetnosci": ["Figma", "Adobe XD", "CSS"] } ], "zakonczona": false }
W tym przykładzie:
❌ Źle: { imie: "Jan", wiek: 30 }
✅ Dobrze: { "imie": "Jan", "wiek": 30 }
Wyjaśnienie: W JavaScript klucze obiektów mogą być bez cudzysłowów, ale w JSON muszą być w podwójnych cudzysłowach.
❌ Źle: { 'imie': 'Jan' }
✅ Dobrze: { "imie": "Jan" }
Wyjaśnienie: JSON akceptuje tylko podwójne cudzysłowy. Pojedyncze cudzysłowy są niedozwolone.
❌ Źle: { "imie": "Jan", "wiek": 30, }
✅ Dobrze: { "imie": "Jan", "wiek": 30 }
Wyjaśnienie: W JSON nie może być przecinka po ostatnim elemencie obiektu ani ostatniej wartości w tablicy.
❌ Źle: { // To jest użytkownik "imie": "Jan" }
✅ Dobrze: { "_komentarz": "To jest użytkownik", "imie": "Jan" }
Wyjaśnienie: JSON nie obsługuje komentarzy. Jeśli musisz dodać notatki, użyj pól z prefiksem podkreślenia.
❌ Źle: { "wiek": undefined, "wynik": NaN }
✅ Dobrze: { "wiek": null, "wynik": null }
Wyjaśnienie: JSON nie obsługuje undefined ani NaN. Użyj null lub pomiń pole całkowicie.
❌ Źle: { "cena": 1,234.56, "telefon": 123-456-789 }
✅ Dobrze: { "cena": 1234.56, "telefon": "123-456-789" }
Wyjaśnienie: W JSON liczby nie mogą zawierać przecinków tysięcznych ani myślników. Telefony i kody pocztowe traktuj jako stringi.
Wskazówka
Użyj Formatowania JSON, aby automatycznie wykryć i naprawić błędy składniowe. Narzędzie podświetli problematyczne linie i zasugeruje poprawki.
Prettify to proces formatowania JSON z wcięciami i podziałami na linie, aby był czytelny dla człowieka:
Przed (minified):
{"imie":"Jan","nazwisko":"Kowalski","wiek":30,"adres":{"miasto":"Warszawa","kod":"00-001"}}
Po (prettified):
{ "imie": "Jan", "nazwisko": "Kowalski", "wiek": 30, "adres": { "miasto": "Warszawa", "kod": "00-001" } }
Kiedy używać prettify:
Minify to proces usuwania zbędnych spacji i znaków nowej linii, aby zmniejszyć rozmiar pliku:
Różnica w rozmiarze:
Kiedy używać minify:
Wskazówka
Użyj Formatowania JSON, aby łatwo przełączać się między trybem prettify a minify. Narzędzie pozwala też skopiować sformatowany wynik jednym kliknięciem.
CSV (Comma Separated Values) to format idealny do analizy w Excelu, Google Sheets czy Tableau. Konwersja JSON do CSV spłaszcza zagnieżdżoną strukturę do tabeli.
Przykład konwersji:
JSON: [ {"imie": "Jan", "wiek": 30, "miasto": "Warszawa"}, {"imie": "Anna", "wiek": 25, "miasto": "Kraków"} ]
CSV: imie,wiek,miasto Jan,30,Warszawa Anna,25,Kraków
Kiedy konwertować:
Wskazówka
Użyj Konwertera JSON na CSV, aby szybko przekonwertować dane. Narzędzie obsługuje zagnieżdżone struktury i pozwala wybrać, które pola eksportować.
XML to starszy format, który nadal jest używany w wielu korporacyjnych systemach (banki, ubezpieczenia, instytucje rządowe). Konwersja JSON → XML jest potrzebna przy integracji z takimi systemami.
Przykład konwersji:
JSON: { "uzytkownik": { "imie": "Jan", "wiek": 30 } }
XML:
<?xml version="1.0" encoding="UTF-8"?> <uzytkownik> <imie>Jan</imie> <wiek>30</wiek> </uzytkownik>Kiedy konwertować:
YAML to format czytelniejszy dla człowieka, często używany w plikach konfiguracyjnych (Docker Compose, Kubernetes, GitHub Actions):
JSON: { "app": { "name": "MojaAplikacja", "port": 3000 } }
YAML: app: name: MojaAplikacja port: 3000
Kiedy konwertować:
Przed wysłaniem JSON do API lub zapisaniem w bazie danych, upewnij się, że:
✅ Wszystkie klucze są w podwójnych cudzysłowach ✅ Wszystkie stringi są w podwójnych cudzysłowach ✅ Brak przecinków po ostatnich elementach ✅ Nawiasy klamrowe {} i kwadratowe [] są zamknięte ✅ Nie ma komentarzy // ani /* */ ✅ Nie ma undefined ani NaN (użyj null)
Użyj Formatowania JSON, aby automatycznie:
Typowe błędy wykrywane przez walidator:
| Błąd | Komunikat | Rozwiązanie |
|---|---|---|
| Brak zamykającego nawiasu | "Unexpected end of JSON" | Dodaj brakujący } lub ] |
| Przecinek na końcu | "Trailing comma" | Usuń ostatni przecinek |
| Pojedyncze cudzysłowy | "Bad string" | Zamień ' na " |
| Komentarz | "Unexpected token /" | Usuń komentarz |
JSON to standardowy format dla nowoczesnych API:
Żądanie (Request): POST /api/users Content-Type: application/json
{ "imie": "Jan", "email": "jan@example.com" }
Odpowiedź (Response): HTTP/1.1 201 Created Content-Type: application/json
{ "id": 123, "imie": "Jan", "email": "jan@example.com", "createdAt": "2026-01-15T10:30:00Z" }
Kody statusu HTTP:
JSON często używa się do przechowywania ustawień aplikacji:
{ "database": { "host": "localhost", "port": 5432, "name": "myapp" }, "features": { "darkMode": true, "notifications": false }, "api": { "timeout": 5000, "retries": 3 } }
Zalety:
W bazach dokumentowych jak MongoDB dane przechowuje się natywnie w formacie JSON (dokładniej BSON — binarny JSON):
{ "_id": ObjectId("507f1f77bcf86cd799439011"), "username": "jankowalski", "posts": [ {"title": "Pierwszy post", "date": ISODate("2026-01-15")}, {"title": "Drugi post", "date": ISODate("2026-01-20")} ], "stats": { "followers": 1500, "following": 230 } }
Zalety NoSQL + JSON:
Formatowanie JSON online to kompletne narzędzie do:
Rozszerzenia do przeglądarek (JSON Viewer, JSONVue) pozwalają:
JavaScript/Node.js:
// Parsowanie (string → obiekt)
const obj = JSON.parse('{"imie": "Jan"}');
// Stringify (obiekt → string)
const str = JSON.stringify({imie: "Jan"}, null, 2);
Python:
import json
## Parsowanie (string → dict)
data = json.loads('{"imie": "Jan"}')
## Stringify (dict → string)
json_str = json.dumps({"imie": "Jan"}, indent=2)
PHP:
// Parsowanie
$data = json_decode('{"imie": "Jan"}', true);
// Stringify
$json = json_encode(["imie" => "Jan"], JSON_PRETTY_PRINT);
Jaka jest różnica między JSON a JavaScript Object?
JSON to format tekstowy (string), podczas gdy JavaScript Object to struktura danych w pamięci. JSON wymaga podwójnych cudzysłowów wokół kluczy i stringów, nie obsługuje komentarzy, undefined, ani funkcji. JavaScript Object jest bardziej elastyczny. Konwersja: JSON.parse() zamienia JSON string na JS Object, JSON.stringify() robi odwrotnie.
Czy JSON obsługuje polskie znaki i emoji?
Tak, JSON domyślnie używa kodowania UTF-8, które obsługuje wszystkie znaki Unicode, w tym polskie litery (ą, ę, ń) i emoji. Możesz zapisać: {"imie": "Łucja", "komentarz": "Super! 🎉"}. Problem może wystąpić tylko, jeśli system źródłowy lub docelowy używa innego kodowania (np. ISO-8859-2), ale współczesne aplikacje praktycznie zawsze używają UTF-8.
Jak przechowywać daty w JSON?
JSON nie ma natywnego typu daty. Najczęściej używane formaty to: (1) ISO 8601: "2026-01-15T10:30:00Z" — zalecany, uniwersalny format; (2) Timestamp: 1705315800 — liczba sekund od 1970-01-01; (3) String niestandardowy: "15-01-2026" — wymaga dokumentacji. Zalecamy format ISO 8601 — jest czytelny, sortowalny i obsługiwany przez wszystkie języki.
Jak radzić sobie z dużymi plikami JSON?
Dla plików >10MB: (1) Strumieniuj dane zamiast ładować całość do pamięci (streaming JSON parser); (2) Podziel na mniejsze pliki lub stronicuj API; (3) Użyj formatu binarnego (MessagePack, BSON) zamiast JSON; (4) Kompresuj (gzip) przy przesyłaniu przez sieć. Dla bardzo dużych zbiorów danych rozważ formaty jak Parquet lub bazy danych zamiast JSON.
Czy mogę używać komentarzy w JSON?
Oficjalny standard JSON nie obsługuje komentarzy (//, /* */). Jeśli potrzebujesz komentarzy, masz opcje: (1) Dodaj pola z prefiksem _np. "_komentarz": "To jest opis"; (2) Użyj JSON5 (rozszerzenie JSON z komentarzami); (3) Użyj YAML zamiast JSON. Dla dokumentacji API używaj osobnych plików Markdown zamiast komentarzy w JSON.
Jak zabezpieczyć dane w JSON?
JSON sam w sobie nie zapewnia bezpieczeństwa — to tylko format tekstowy. Zabezpiecz dane poprzez: (1) Szyfrowanie wrażliwych danych przed zapisaniem do JSON (np. bcrypt dla haseł); (2) Używanie HTTPS przy przesyłaniu JSON przez sieć; (3) Walidację schematu JSON (JSON Schema) przed przetwarzaniem; (4) Escapowanie znaków specjalnych w stringach; (5) Ograniczenie rozmiaru JSON (protection against payload attacks).
Jak konwertować JSON na CSV bez utraty danych?
Konwersja JSON → CSV jest prosta dla płaskich struktur, ale trudna dla zagnieżdżonych. Opcje: (1) Spłaszcz zagnieżdżone obiekty — {"user": {"name": "Jan"}} → kolumna "user.name"; (2) Wybierz tylko najważniejsze pola do CSV; (3) Użyj wielu plików CSV z relacjami (jak w bazach SQL); (4) Dla złożonych struktur zostań przy JSON lub użyj formatu Parquet. Użyj Konwertera JSON na CSV, który automatycznie obsługuje zagnieżdżenia.
Jak formatować JSON w terminalu (CLI)?
Python (zainstalowany prawie wszędzie):
cat data.json | python -m json.tool
jq (dedykowane narzędzie):
cat data.json | jq '.'
Node.js:
cat data.json | node -e "console.log(JSON.stringify(JSON.parse(require('fs').readFileSync(0)), null, 2))"
Najlepszy jest jq — potężne narzędzie do filtrowania i transformacji JSON w linii komend.
JSON to fundament współczesnego programowania i wymiany danych. Jego prostota, czytelność i uniwersalność sprawiają, że stał się standardem de facto dla API, konfiguracji i przechowywania danych.
Kluczowe zasady:
✅ Poprawna składnia — podwójne cudzysłowy, brak przecinków na końcu, brak komentarzy
✅ Walidacja — zawsze sprawdzaj JSON przed użyciem w produkcji
✅ Formatowanie — prettify do debugowania, minify do produkcji
✅ Konwersja — znasz potrzeby odbiorcy (CSV dla Excela, XML dla legacy, YAML dla DevOps)
✅ Narzędzia — używaj Formatowania JSON online do szybkiej pracy
✅ Bezpieczeństwo — nie przechowuj wrażliwych danych w plain JSON, używaj HTTPS
JSON może wydawać się prosty, ale mistrzostwo w pracy z tym formatem wymaga praktyki. Im więcej będziesz pracować z API, bazami NoSQL i konfiguracjami, tym bardziej docenisz elegancję i prostotę JSON.
Użyj Formatowania JSON online, aby zacząć pracę z JSON już teraz. Wklej swój kod, sprawdź poprawność, sformatuj z wcięciami i eksportuj do dowolnego formatu.
Powodzenia w pracy z danymi!
Jak zacząć pracę z tematem: json dla początkujących — jak formatować, walidować i konwertować dane 2026? Najpierw zbierz dane wejściowe i upewnij się, że są aktualne. Potem wykonaj obliczenie krok po kroku i porównaj wynik z prostym przypadkiem kontrolnym.
Jak uniknąć najczęstszych błędów? Najczęściej błędy wynikają z pomijania założeń, literówek w danych i braku końcowej weryfikacji wyniku. Zawsze sprawdzaj wynik na dwóch niezależnych przykładach.
Kiedy warto użyć narzędzia online? Narzędzie online sprawdza się, gdy chcesz skrócić czas pracy i ograniczyć ryzyko pomyłki rachunkowej. Jest szczególnie przydatne przy powtarzalnych wyliczeniach.
Jak sprawdzić, czy wynik jest poprawny? Porównaj wynik z ręcznym obliczeniem dla prostych danych oraz zweryfikuj, czy wartości mieszczą się w oczekiwanym zakresie. Rozbieżności oznaczają błąd w danych lub założeniach.
Jakie dane wejściowe są kluczowe? Kluczowe są kompletne i aktualne wartości źródłowe oraz jednoznaczne założenia. Brak jednego parametru potrafi istotnie zmienić wynik końcowy.
Skorzystaj z poniższych narzędzi, aby szybciej wykonać opisane działania:
Spis treści
Kompletny zestaw narzędzi dla programistów: formatter JSON, tester regex, minifikator CSS/JS, parser SQL, dekoder JWT i generator crontab. Przyspieszam pracę developerów.
Poradnik dla przedsiębiorców. Naucz się obliczać ROI, marżę produktu, CTR, wskaźnik konwersji, CAC i LTV. Includes worked examples z rzeczywistymi liczbami.
Kompletny poradnik SEO dla webmasterów. Meta tagi, Open Graph, robots.txt, sitemap, UTM parametry. Praktyczne porady dla polskich stron internetowych.