JSON megjegyzéspélda - Hogyan kommenteljünk a JSON fájlokban

Ha problémái adódnak a megjegyzések hozzáadásával a JSON fájljához, jó oka van: a JSON nem támogatja a megjegyzéseket.

"Eltávolítottam a JSON-tól a megjegyzéseket, mert láttam, hogy az emberek értelmezési irányelvek megtartására használják őket, ez a gyakorlat megsemmisítette volna az interoperabilitást" - írja Douglas Crockford, aki népszerűsítette a szöveges adatformátumot.

Van azonban egy megoldás. És erről szól ez a cikk: hogyan adhatunk megjegyzéseket JSON fájljához.

Adatok hozzáadása megjegyzésként

A megjegyzéssel kapcsolatos kérdések körüljárásának módja az, hogy adatokat fűz a JSON fájljához, amelyek megjegyzésként működnek.

Nézzünk át egy példát, kezdve ezzel az információval a JSON fájlunkban:

{ "sport": "basketball", "coach": "Joe Smith", "wins": 15, "losses": 5 } 

Most adjunk hozzá egy másik kulcs-érték párot, amely megjegyzésként szolgál, amelyet az alábbi kód első sorában láthat:

{ "_comment1": "this is my comment", "sport": "basketball", "coach": "Joe Smith", "wins": 15, "losses": 5 } 

Itt van egy másik példa. Ezúttal két aláhúzást használunk a kulcs elején és végén:

 "__comment2__": "this is another comment", 

Az aláhúzások segítenek megkülönböztetni a megjegyzést a fájlunk többi adattól.

Óvatosan

Fontos szem előtt tartani egy fontos részletet.

A JSON fájlunkhoz adott megjegyzéseket a JSON objektum tartalmazza. Más szóval, a megjegyzéseket adatként kezeljük.

Ezt értjük.

Ez a kód a fájlunkban data.json:

{ "_comment1": "this is my comment", "sport": "basketball", "coach": "Joe Smith", "wins": 15, "losses": 5 } 

Most ki fogjuk olvasni ezeket az adatokat a fájlból read_comments.py:

import json with open("data.json", mode="r") as j_object: data = json.load(j_object) print(data) 

Az eredmény tartalmazza a megjegyzésünket:

{'_comment1': 'this is my comment', 'sport': 'basketball', 'coach': 'Joe Smith', 'wins': 15, 'losses': 5} 

Még a komment értékét is kivonhatjuk a JSON objektumból this is my comment:

import json with open("data.json", mode="r") as j_object: data = json.load(j_object) print(data["_comment1"]) 

Ne feledje, hogy a megjegyzés csak egy megjegyzés a fejlesztő szemében - nem a számítógép.

Más típusú megjegyzés

Ez a JSON kommentálási gyakorlat eltér a programozási nyelvek - például a Python - megjegyzéseitől, amelyeket általában a program futtatásakor figyelmen kívül hagynak.

# Here's my comment word = "house" for letter in word: print(letter) 

Amikor a fenti Python programot futtatjuk, megkapjuk a betűket a „house” szóban. De nem látjuk a megjegyzést. Ezt figyelmen kívül hagyják.

Megjegyzésbeállítási lehetőségek

A JSMin egy másik megfontolandó lehetőség.

Ez egy olyan eszköz, amely eltávolítja az extra szóközt és a megjegyzéseket a JavaScript fájlokból. De a JSON fájlokon is működik. A JSMin eltávolítja a megjegyzéseket a JSON fájlokból, mielőtt azokat elemeznék.

Tehát vannak lehetőségek a JSON fájlokban történő kommentelésre. Bár ezek nem tökéletes megoldások, legalábbis van mód arra, hogy a szükséges dokumentációt belefoglalja, amikor szüksége van rá.

A programozás megtanulásáról és a legjobb módszerekről írok ( amymhaddad.com).