JSON (JavaScript Object Notation) to lekki format wymiany danych, który jest łatwy do odczytania i napisania przez człowieka, a także łatwy do parsowania i generowania przez maszynę. Jest oparty na podzbiorze języka programowania JavaScript, ale jest całkowicie niezależny od żadnego języka. JSON jest szeroko stosowany do wymiany danych między serwerem a aplikacją internetową, aplikacjami mobilnymi, a także do przechowywania danych.
JSON jest zbudowany na dwóch podstawowych strukturach:
Zestaw par "nazwa/wartość": W wielu językach jest to realizowane jako obiekt, rekord, struktura, słownik, tabela haszująca, lista z kluczowym dostępem lub tablica asocjacyjna. W JSON jest to reprezentowane przez obiekt, oznaczony nawiasami klamrowymi {}
.
{
"name": "Ivan",
"age": 30,
"city": "Kyiv"
}
Uporządkowana lista wartości: W większości języków jest to realizowane jako tablica, wektor, lista lub sekwencja. W JSON jest to reprezentowane przez tablicę, oznaczony nawiasami kwadratowymi []
.
[
"apple",
"banana",
"orange"
]
Wartości mogą być ciągami znaków (string), liczbami (number), obiektami (object), tablicami (array), wartościami logicznymi (true/false) lub null.
JSON jest nieodłączną częścią współczesnego tworzenia stron internetowych. Oto kilka typowych scenariuszy jego użycia:
Parametr | XML | JSON |
---|---|---|
Format | Tekst z tagami | Tekst z kluczami i wartościami |
Czytelność | Wyższa dla skomplikowanych struktur | Lepsza dla prostych danych |
Rozmiar pliku | Zazwyczaj większy | Mniejszy |
Kompatybilność | Szerokie wsparcie | Przeważnie w JavaScript |
XML lepiej nadaje się do skomplikowanych struktur z atrybutami, podczas gdy JSON — do lekkich REST API.
Czasami pojawia się potrzeba przekształcenia danych z formatu tabelarycznego, na przykład z Microsoft Excel, na JSON. Może to być przydatne do importowania danych do usług internetowych lub baz danych, które pracują z JSON. Chociaż Excel nie ma wbudowanej funkcji do bezpośredniego eksportu do JSON, istnieją rozwiązania stron trzecich.
Jednym z takich użytecznych narzędzi jest niestandardowa funkcja Excel TABLETOJSON(). Ta funkcja pozwala łatwo przekształcić dane z tabeli Excel w ciąg znaków JSON.