JSON – znaczenie skrótu i pierwszy przykład
JSON to skrót od JavaScript Object Notation. Format spopularyzował Douglas Crockford na początku XXI wieku; jego składnia wywodzi się z JavaScriptu, a standardem są RFC 8259 i ECMA-404. Mimo nazwy JSON nie zależy od żadnego języka programowania: praktycznie każdy język potrafi go odczytywać i zapisywać.
Mały dokument JSON opisujący osobę:
{"name": "Ada Lovelace", "born": 1815, "languages": ["English", "French"], "mathematician": true, "spouse": null}
Typy danych w JSON
| Typ | Przykład | Uwagi |
|---|---|---|
| String (ciąg znaków) | "Hello" | tekst w podwójnych cudzysłowach, z sekwencjami ucieczki, np. \n |
| Number (liczba) | 42, -3.14, 6.02e23 | bez NaN, Infinity, zapisu szesnastkowego i zer wiodących |
| Boolean (wartość logiczna) | true, false | zawsze małymi literami |
| Null | null | pusta lub nieznana wartość |
| Object (obiekt) | {"key": "value"} | pary nazwa–wartość; nazwy są ciągami znaków |
| Array (tablica) | [1, 2, 3] | uporządkowana lista wartości dowolnego typu |
JSON nie ma typu daty: daty zapisuje się zwykle jako ciągi w formacie ISO 8601, np. "2026-05-01T10:00:00Z".
Format JSON – zasady składni
- Dane zapisuje się jako pary nazwa–wartość:
"name": "Ada". - Nazwy (klucze) i ciągi znaków zawsze ujmuje się w podwójne cudzysłowy – nigdy w apostrofy.
- Elementy oddziela się przecinkami, bez przecinka po ostatnim elemencie.
- Nawiasy klamrowe
{ }zawierają obiekty, a nawiasy kwadratowe[ ]– tablice. - Komentarze są niedozwolone.
- Spacje i podziały wierszy między elementami są ignorowane, więc te same dane można zminifikować lub sformatować.
- Tekst JSON zawiera jedną wartość najwyższego poziomu i jest kodowany w UTF-8.
Co to jest plik JSON?
Plik JSON to zwykły plik tekstowy z rozszerzeniem .json, który zawiera jeden dokument JSON. Jego typ MIME to application/json, a zapisywać go należy w kodowaniu UTF-8. Typowe pliki JSON to eksporty danych z aplikacji i serwisów (np. Google Takeout czy pobrane dane z mediów społecznościowych), pliki konfiguracyjne takie jak package.json, zapisane na dysku odpowiedzi API oraz zbiory danych do analizy. Ponieważ to zwykły tekst, plik JSON można bezpiecznie otworzyć – nie może on uruchomić żadnego kodu.
Jak otworzyć plik JSON
| Gdzie | Jak |
|---|---|
| Windows | Kliknij plik prawym przyciskiem myszy → Otwórz za pomocą → Notatnik albo użyj edytora kodu, np. VS Code. Plik możesz też przeciągnąć do okna przeglądarki internetowej. |
| Mac | Otwórz go w TextEdit lub edytorze kodu albo upuść na okno przeglądarki internetowej. |
| iPhone i Android | Otwórz go z aplikacji Pliki w podglądzie tekstowym lub wczytaj do przeglądarki JSON online – nasza działa na telefonach, a plik pozostaje na Twoim urządzeniu. |
| Przeglądarka internetowa | Firefox ma wbudowany podgląd plików JSON; w każdej przeglądarce możesz też użyć przeglądarki JSON online, która pokaże dane jako zwijane drzewo. |
| Excel | W systemie Windows użyj Dane → Pobierz dane → Z pliku → Z pliku JSON lub najpierw przekonwertuj plik narzędziem JSON do CSV. |
JSON vs XML
| JSON | XML | |
|---|---|---|
| Składnia | nawiasy klamrowe i kwadratowe, pary nazwa–wartość | znaczniki otwierające i zamykające |
| Typy danych | string, number, boolean, null, object, array | tylko tekst, chyba że typy definiuje schemat |
| Rozmiar | zwarty | większy z powodu znaczników zamykających |
| Komentarze | nie | tak |
| Atrybuty, przestrzenie nazw | nie | tak |
| Typowe zastosowanie | webowe API, konfiguracja, bazy danych NoSQL | dokumenty, pliki biurowe, SOAP i systemy korporacyjne |
JSON w API i aplikacjach
Większość webowych API wysyła i odbiera JSON. Klient wysyła żądanie z nagłówkiem Content-Type: application/json, serwer odpowiada w formacie JSON, a program zamienia odpowiedź na natywne obiekty za pomocą JSON.parse w JavaScripcie, json.loads w Pythonie lub json_decode w PHP. JSON napędza też pliki konfiguracyjne, takie jak package.json i tsconfig.json, dokumentowe bazy danych, takie jak MongoDB, oraz ustrukturyzowane odpowiedzi modeli AI.
Najczęstsze błędy w JSON
- Końcowy przecinek po ostatnim elemencie:
[1, 2,] - Apostrofy lub klucze bez cudzysłowów:
{'a': 1},{a: 1} - Komentarze, np.
// note - Brakujący przecinek lub nawias między elementami
- Wartości z JavaScriptu lub Pythona, takie jak
undefined,NaNczyTrue
Wklej dane do walidatora JSON, aby zobaczyć dokładny wiersz i kolumnę problemu, albo pozwól, by funkcja „Napraw” poprawiła je automatycznie.
JSON5, JSONC i JSON Lines
- JSON5 – luźniejszy nadzbiór JSON do plików pisanych ręcznie: komentarze, końcowe przecinki, apostrofy, klucze bez cudzysłowów i liczby szesnastkowe. Standardowe parsery JSON nie potrafią go odczytać.
- JSONC – JSON z komentarzami, używany w ustawieniach VS Code i w
tsconfig.json. - JSON Lines / NDJSON (
.jsonl) – jedna wartość JSON w każdym wierszu; idealny do logów i strumieniowania dużych zbiorów danych. - GeoJSON – JSON dla obiektów geograficznych, zdefiniowany w RFC 7946.
Najczęściej zadawane pytania
Czy JSON jest językiem programowania?
Nie. JSON to format danych: opisuje dane, ale nie może zawierać logiki, funkcji ani komentarzy.
Czy JSON to to samo co obiekt JavaScript?
Nie. JSON to tekst, który wygląda jak literał obiektu JavaScript, ale jest bardziej rygorystyczny: klucze i ciągi znaków wymagają podwójnych cudzysłowów, a funkcje, undefined i komentarze są niedozwolone. JSON.parse zamienia ten tekst w prawdziwy obiekt.
Jak utworzyć plik JSON?
Wpisz dane w dowolnym edytorze tekstu zgodnie z powyższymi zasadami i zapisz plik w kodowaniu UTF-8 z rozszerzeniem .json. Zanim go użyjesz, sprawdź go walidatorem JSON.
Ostatnia aktualizacja: