Retour au blog

Un aperçu du format de partage de données JSON

Un aperçu du format de partage de données JSON

JavaScript Object Notation (JSON pour faire court et se prononçant un peu comme le nom « Jason »), est un type de format de partage de données. Comme en témoigne son nom, JSON découle de JavaScript, mais il n’est pas le seul propriétaire de code qui permet son utilisation. En fait, de nombreux autres langages de programmation l’ont à leur disposition pour leur utilisation, y compris Ruby, PHP, Python, et Java.

Lorsqu’il existe de manière autonome, le fichier JSON utilise l’extension .json , mais étant un format facilement transmissible entre un serveur web et un client (ou navigateur), il peut également être défini comme un format .html . Dans ce cas, il peut s’agir soit d’un objet attribué à une variable, soit d’une chaîne JSON entre guillemets.

JSON est une bonne alternative à XML car il est plus lisible et nécessite un formatage minimal. Ce tutoriel vous présentera les données qui peuvent être stockées dans les fichiers JSON, ainsi que la syntaxe générale et la structure du format.

Structure & Syntaxe

Un objet JSON est un format de données qui utilise des accolades pour représenter des paires clé-valeur. Lorsque vous manipulez du JSON, vous le verrez le plus souvent représenté dans des fichiers .json, mais dans le contexte d’un programme, il peut également exister sous forme de chaîne ou d’un objet JSON.

Voici un exemple de ce à quoi ressemble un objet JSON :

json object

Bien qu’il s’agisse d’un exemple plutôt court, et que les objets JSON puissent être beaucoup plus longs, il démontre avec précision comment le format est généralement configuré avec deux accolades à chaque extrémité, les paires clé-valeur remplissant l’espace intermédiaire. La majorité des données en JSON sont encapsulées dans un élément JSON.

Un deux-points délimite les paires clé-valeur (“clé” : “valeur”). Chacune de ces paires est séparée des autres éléments de la liste par une virgule. Cela donne pour la partie centrale d’un formatage JSON la structure suivante : “clé” : “valeur”, “clé” : “valeur”, “clé” : “valeur”. Dans l’exemple ci-dessus, "name" : "Akshay" est la première paire clé-valeur, par exemple.

Les clés de chaque objet doivent être uniques, peuvent être représentées par n’importe quelle chaîne valide, entourée de guillemets doubles (“clé”), et sont toujours positionnées à gauche du deux-points. Bien que les espaces dans les chaînes de clés soient autorisés (comme dans “prénom”), cela présente une approche plus difficile du côté de la programmation en termes d’accès. Pour cette raison, la pratique de programmation couramment adoptée consiste à remplacer les espaces dans les clés par des tirets du bas (“first_name”).

Les valeurs en JSON sont positionnées à droite du deux-points. À leur niveau de granularité le plus basique, elles doivent appartenir à l’un des 6 types de données particuliers suivants :

  • Nombres
  • Objets
  • Tableaux
  • Chaînes de caractères
  • Vrai ou Faux (Booléen)
  • Null

La section suivante couvrira des types de données plus complexes du tableau d’objets JSON, chaque valeur transmise dans le JSON conservant sa syntaxe. En d’autres termes, les chaînes continueront d’apparaître entre guillemets tandis que la valeur numérique n’en aura pas.

Le format JSON est généralement présenté sous un format multiligne par convention. Cependant, il peut également être formaté sur une seule ligne :

single line json

Ce type de formatage est plus courant lorsqu’on rencontre une chaîne JSON ou au sein d’un autre type de fichier. Lors du travail avec de grands ensembles de données, l’écriture des deux-points et des paires clé-valeur sur des lignes individuelles rend la liste plus lisible pour l’œil humain, car le JSON ne dispose pas de l’aide à la séparation des espaces :

json object

Bien que l’objet JSON ressemble à JavaScript, il est important de garder à l’esprit qu’il s’agit de formats distincts. Alors que JavaScript permet l’utilisation de fonctions, ce n’est pas le cas de JSON. Ce qui rend le JSON si précieux, c’est sa compatibilité multi-langages, permettant à toutes les plateformes de programmation de l’interpréter.

Jusqu’à présent, nous n’avons vu le format JSON que sous sa forme la plus simple, mais il peut évoluer de manière hiérarchique et plus complexe lorsqu’il inclut des objets et des tableaux imbriqués. Dans la section suivante, nous examinerons le JSON plus avancé.

Utilisation de types JSON complexes

En plus des tableaux imbriqués, JSON peut également stocker des objets imbriqués. Ces objets et tableaux seront transférés en tant que valeurs pour des clés, et ils seront associés à des clés pour former des paires clé-valeur.

  • Formation d’objets imbriqués

Dans le fichier users.json fichier image, il y a un objet JSON imbriqué relayé pour chacun des quatre utilisateurs (“akshay”, “sam”, “Andrew”, “James”). Chaque utilisateur possède ses propres clés imbriquées (“location” et “username”):

nested

La partie en surbrillance représente un exemple du premier objet imbriqué. Des accolades sont utilisées dans l'exemple ci-dessus pour créer un objet JSON imbriqué avec un nom d'utilisateur et des détails de position correspondants pour chacun des quatre utilisateurs. Lors de l'utilisation d'objets, des virgules sont utilisées pour distinguer les éléments en fonction de l'attribut d'utilisateur particulier.

  • Formation de tableaux imbriqués

Les tableaux Javascript transmis comme valeur peuvent également être exploités pour imbriquer des données au format JSON. Cela se fait en utilisant [ ] (crochets) à la fin des types de tableaux, les tableaux étant des listes structurées incluant des types de données uniques :

array

Dans la section en surbrillance des exemples ci-dessus, les 2 sites de profil de médias sociaux et les 2 liens de site Web d’Akshay sont chacun utilisés dans un tableau d'informations imbriquées, en raison de la présence des crochets. En impliquant l'imbrication de cette manière dans JSON, nous pouvons obtenir plus de polyvalence dans le travail avec un contenu de données hiérarchique et complexe.

  • Comparaison avec XML

Extensible Markup Language (XML) fournit une méthode de stockage des données accessible aussi bien par les machines que par les humains. Comme JSON, XML peut être utilisé par de nombreux langages de programmation. Contrairement à JSON, XML implique beaucoup plus de texte et est donc plus complexe et plus long à assembler. Alors qu’une fonction standard peut analyser le JSON, le XML nécessite un analyseur spécifique au XML. De plus, le XML n’est pas capable d’utiliser des tableaux. Comparons les mêmes données formatées en XML par rapport à JSON :

xml vs json

Le XML nécessite beaucoup plus de texte et prend plus de place. Il nécessite également des balises de fin, tandis que le JSON est beaucoup plus compact et simple à organiser. Ceux qui connaissent l'HTML peuvent probablement noter la similitude dans l'utilisation des balises par le XML.

Avant de décider quel format utiliser, il est toujours utile d'évaluer la portée et les besoins du projet. Le JSON est moins verbeux, plus léger et rapide à utiliser pour les applications AJAX et d'autres situations. Le type de projet aidera à mettre en lumière les structures de données les mieux adaptées à utiliser.

En savoir plus sur JSON

Le JSON est un format polyvalent et naturel qui peut être implémenté dans plusieurs langages de programmation. Vous pourrez trouver la liste complète des langages pris en charge sur la page “Introducing JSON”. De plus, des informations sur l'analyse et la compatibilité peuvent être trouvées dans la “bibliothèque iQuery.”

En fin de compte, vous n’écrirez probablement pas trop souvent du JSON brut. Au lieu de cela, vous le récupérerez à partir de sources de données ou traduirez d’autres fichiers de données en JSON. En utilisant l’outil open-source Mr. Data Converter, vous pouvez traduire des données CSV ou délimitées par des tabulations trouvées dans des tableurs en JSON. Avec la plateforme sous licence Creative Commons utilities-online.info platform, vous pouvez traduire du XML en JSON et vice versa. Lorsque vous utilisez un logiciel automatisé, vérifiez les rapports pour éliminer toute redondance.

Vous pouvez également utiliser JSONLint pour vérifier votre JSON et JFiddle pour l’évaluer dans un contexte de développement web lors de la conversion d’autres types au format JSON.

Conclusion

Bénéficiant d’un support accru des API (y compris l’API Twitter), JSON est un format de données léger qui favorise la simplicité d’édition, de stockage et de partage des données. Puisque vous ne générerez pas vos propres fichiers .json, mais que vous les recevrez plutôt d’autres sources, il est plus important de réfléchir à la manière d’utiliser JSON dans vos programmes plutôt qu’à sa structure.

Voici d’autres ressources de notre blog qui vous aideront à programmer avec JavaScript :

Bonne programmation !

author

Akshay Nagpal

Auteur · CloudSigma

Preslav Dobrev est un designer créatif chez CloudSigma, axé sur une identité commerciale cohérente à travers des canaux marketing traditionnels et innovants. Il excelle à fusionner la vision artistique avec le marketing stratégique pour créer des récits de marque percutants.

Commentaires

Aucun commentaire pour l'instant. Soyez le premier.