JSON-kommentareksempel - Sådan kommenteres i JSON-filer

Hvis du har problemer med at tilføje kommentarer til din JSON-fil, er der en god grund: JSON understøtter ikke kommentarer.

”Jeg fjernede kommentarer fra JSON, fordi jeg så, at folk brugte dem til at holde analysedirektiver, en praksis, der ville have ødelagt interoperabilitet,” skriver Douglas Crockford, der populariserede det tekstbaserede dataformat.

Der er dog en løsning. Og det er, hvad denne artikel handler om: hvordan du tilføjer kommentarer til din JSON-fil.

Tilføj data som kommentarer

En måde at skære rundt om kommentarproblemet er at tilføje data til din JSON-fil, der fungerer som kommentarer.

Lad os gennemgå et eksempel startende med disse oplysninger i vores JSON-fil:

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

Lad os nu tilføje endnu et nøgleværdipar, der fungerer som vores kommentar, som du kan se i den første linje i koden nedenfor:

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

Her er et andet eksempel. Denne gang bruger vi to understregninger i starten og slutningen af ​​nøglen:

 "__comment2__": "this is another comment", 

Understreger hjælper med at skelne kommentaren fra resten af ​​dataene i vores fil.

Bemærk

Der er en vigtig detalje at huske på.

De kommentarer, vi tilføjede til vores JSON-fil, er inkluderet i JSON-objektet. Med andre ord behandles kommentarerne som data.

Her er hvad vi mener.

Dette er koden i vores fil data.json:

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

Nu skal vi læse disse data fra filen read_comments.py:

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

Resultatet inkluderer vores kommentar:

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

Vi kan endda udtrække kommentarens værdi fra JSON-objektet this is my comment::

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

Husk, at kommentaren kun er en kommentar i udviklerens øjne - ikke computeren.

En anden type kommentar

Denne JSON-kommenteringspraksis er forskellig fra kommentarer på programmeringssprog, som Python, som typisk ignoreres, når programmet kører.

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

Når vi kører Python-programmet ovenfor, får vi bogstaverne i ordet "hus". Men vi kan ikke se kommentaren. Det ignoreres.

Kommentarindstillinger

JSMin er en anden mulighed at overveje.

Det er et værktøj, der fjerner ekstra mellemrum og kommentarer fra JavaScript-filer. Men det fungerer også på JSON-filer. JSMin fjerner kommentarer fra JSON-filer, før de parses.

Så der er muligheder, når det kommer til at kommentere i JSON-filer. Selvom de ikke er perfekte løsninger, er der i det mindste måder at inkludere den dokumentation, du har brug for, når du har brug for det.

Jeg skriver om at lære at programmere og de bedste måder at gøre det på ( amymhaddad.com).