Co to jest JSON?

JSON oznacza JavaScript Object Notation, jest lekkim formatem do wymiany i przechowywania danych. Format przechowywania danych jest najczęściej używany w wywołaniach interfejsu API REST (żądanie i odpowiedź REST) ​​oraz w bazach danych NoSQL, takich jak MongoDB. JavaScript Object Notation jako format jest bardzo prosty, samoopisujący się i intuicyjny.

Definicja

Jest taki sam, jak format, w którym tworzone są obiekty JavaScript, ale w JSON obiekty są tylko tekstem. Odczytywanie i generowanie notacji obiektowych JavaScript można wykonywać za pomocą dowolnego języka programowania. Być może będziemy musieli przestrzegać następujących reguł składni -

  1. Dane są zawsze w parach klucz / wartość.
  2. Każdy obiekt danych jest oddzielony przecinkiem.
  3. Obiekty są trzymane w nawiasach klamrowych (nawias klamrowy taki jak „()”)
  4. Tablice są trzymane w nawiasach kwadratowych.

Obiekt JSON

Typowy obiekt jest następujący

(
“Name”: “Alex”,
“Occupation”: “Teacher”,
“Places visited”: (“San Francisco”, “California”, “Houston”) )

W powyższych przykładach „Nazwa”, „Zawód”, „Miejsca odwiedzane” to klucze, a „Alex”, „Nauczyciel” i tablica („San Francisco”, „Kalifornia”, „Houston”) są wartościami odpowiednie klucze i całe dane zawarte w nawiasach kwiatowych stanowią obiekt JavaScript Object Notation. Wartości mogą być łańcuchem, innym obiektem, wartością logiczną, pustą, liczbą.
Obiekty można również zagnieżdżać, a także mieć formę tablic.

Przykłady:

1. Zagnieżdżone obiekty

(
“Role”: “Student”,
“Name”: (
“First name”: “Alex”,
“Last name”: “Hill”
)
)

Zewnętrzne nawiasy klamrowe tworzą główny obiekt JSON zagnieżdżony w innym obiekcie JSON z kluczem „Nazwa”, a następnie dane w wewnętrznych nawiasach klamrowych. Następnie zobaczmy tablicę obiektów.

2. Tablica obiektów

(
“Grade”: 6,
“Student names”: (
(
“First name”: “Alex”,
“Last name”: “Hill”
),
(
“First name”: “Neal”,
“Last name”: “Hunter”
),
(
“First name”: “Peter”,
“Last name”: “Jones”
)
) )

Jak widać, zewnętrzne nawiasy klamrowe tworzą główny obiekt danych JSON, a para nawiasów kwadratowych zawiera zestaw obiektów, który jest tablicą obiektów JSON.

3. Typy danych

Wartości muszą mieć jeden z następujących typów danych.

  • Smyczki:

(“name”: “Johnny”)

  • Numer:

(“age”: 21)

  • Obiekt:

(
employee”: (“name”: “John”, “age”: 221)
)

Uwaga - Obiekty w zagnieżdżonych obiektach JSON muszą również przestrzegać tych samych reguł składniowych, co normalny obiekt JSON.

  • Boolean:

(“sale”: true)

4. Analiza JSON

Rozważmy Python jako przykładowy język programowania i zobaczmy, jak obsługiwać obiekty danych.

1. importuj json
# json to moduł w Pythonie do obsługi obiektów danych

2. string_a = „(„ name ”:„ Alex ”, „ age ”:„ 22 ”, „ okup ”:„ Teacher ”)”
# pozwól mi wyjaśnić przykład formatu ciągu za pomocą reguł składniowych

3. json_object = json.loads (string_a)
# teraz obiekt json ma obiekt string_a jako obiekt JSON, a kluczowe wartości można odnieść w następujący sposób

print („Nazywa się”, json_object („nazwa”))
print (json_object („imię”, „wiek to”, json_object („wiek”)))

Tak więc podczas analizowania JSON przy użyciu Pythona obiekty JSON przyjmują postać słownika, a klucze będą przywoływane w indeksie, jak wspomniano w powyższym przykładzie.

Zobaczmy teraz, jak możemy parsować obiekty JSON z pliku w Pythonie

1. importuj json
# json to moduł w Pythonie do obsługi swoich obiektów

2. moduł obsługi plików = otwarty ('json_data_file.json', 'r')
# open to funkcja umożliwiająca otwarcie pliku w pythonie, a pliki json są przechowywane z rozszerzeniem
# .json, który w tym przykładzie jest otwarty w trybie czytania „r”

3. json_object = json.load (moduł obsługi plików)
# json.load () to funkcja, która akceptuje moduł obsługi pliku json i odczytuje jego dane
# obiektów z pliku
print („Nazywa się”, json_object („nazwa”))
print (json_object („imię”, „wiek to”, json_object („wiek”)))

Uwaga - możesz albo odczytać plik, wyodrębnić zawartość jako ciąg i użyć metody json.loads (), aby uzyskać obiekt json, albo bezpośrednio użyć metody load, aby wyodrębnić przekazanie procedury obsługi pliku jako parametru

Wymiana obiektów danych

Prawie wszystkie języki programowania są przystosowane do generowania i obsługi słowników, skrótów lub tablic asocjacyjnych. Tak więc dane, które muszą być wymieniane między klientami a serwerami, muszą być rzutowane na jedną z tych form, w zależności od używanego języka programowania.

JSON vs XML

Tradycyjnie protokołem używanym do wymiany danych między klientem a serwerem był SOAP (Simple Object Access Protocol), który korzystał z XML (Extensible Markup Language). Wraz z wprowadzeniem REST (Representational State Protocol) korzystanie z JavaScript Object Notation stało się powszechnie znane.

Oto kilka podobieństw między nimi

  1. Oba są intuicyjne i łatwe do odczytania.
  2. Oba mogą być zagnieżdżone i hierarchiczne.
  3. Oba można analizować przy użyciu wielu różnych języków.
  4. Oba są wymieniane za pośrednictwem internetowych żądań transferu danych.

Oto kilka różnic między nimi

  1. Nie ma formatu tagu.
  2. Jest optymalny do przechowywania, ponieważ jest stosunkowo krótszy niż XML.
  3. Szybciej jest czytać i pisać.
  4. Może używać tablic, podczas gdy nie jest to łatwe w XML.

Niedogodności

Widzieliśmy zalety, ale nie jest ono pozbawione wad. Oto wady:

  1. To nie jest w pełni bezpieczne.
  2. Jest ograniczony pod względem obsługiwanych typów danych.

W jaki sposób wiedza na temat JSON pomoże ci w karierze?

Jest to format danych służący do wymiany informacji między klientami a serwerami. Wyobraź sobie, że gdybyś mógł opracować zoptymalizowany schemat reprezentacji danych, który wykorzystuje mniej danych do wymiany dużych danych, to świetna rzecz. Cały świat zmierza w kierunku usług API RESTful. Dlatego świetna znajomość tego języka pomoże Ci wymyślić fajne usługi API.

Wniosek

Jest to jeden z ciekawych formatów danych służących do uzyskiwania dostępu, przechowywania i rozumienia danych. Jeśli szukasz czegoś, co jest szybkie, lekkie do wymiany danych, zawsze możesz spodziewać się zastosowania JavaScript Object Notation.

Polecane artykuły

To był przewodnik po tym, co to jest JSON. Tutaj omówiliśmy działanie JSON za pomocą przykładów oraz tego, jak i gdzie może pomóc w rozwoju kariery. Możesz także przejrzeć nasze inne sugerowane artykuły, aby dowiedzieć się więcej -

  1. Co to jest JavaScript?
  2. Co to jest tablica PHP?
  3. Co to jest SAS?
  4. Co to jest wzorzec projektowy w Javie?