Maison  >  Article  >  interface Web  >  Quelles sont les différentes définitions d’un JSON valide ?

Quelles sont les différentes définitions d’un JSON valide ?

DDD
DDDoriginal
2024-11-06 22:50:02813parcourir

What are the Different Definitions of Valid JSON?

Comprendre le JSON minimal valide

Le concept de JSON a été largement discuté dans diverses RFC et spécifications. La RFC4627 définissait initialement JSON comme étant soit un objet sérialisé, soit un tableau. Sur la base de cette définition, seulement {} (objet vide) et [] (tableau vide) sont considérés comme des chaînes JSON complètes et valides.

Cependant, ECMA-404 a introduit un amendement qui élargit la gamme de chaînes JSON valides. Avec cette mise à jour, string, number, true, false, null, {} ( objet vide) et [] (tableau vide) sont tous considérés comme des chaînes JSON valides.

Dans le domaine des navigateurs Web, JSON est standardisé dans ES5. ES5 définit les textes JSON valides comme étant identiques à la RFC 4627, à deux exceptions près. Premièrement, la production JSONText de niveau supérieur peut être constituée de n'importe quelle valeur JSONValue (y compris des chaînes, des nombres, des booléens et des valeurs nulles) au lieu d'être limitée à un objet ou à un tableau. Cela signifie que toutes les valeurs JSON sont acceptées dans les navigateurs Web, même si l'objet JSON sous-jacent peut adhérer à la RFC 4627.

Il est important de noter que différents analyseurs peuvent avoir différents niveaux de prise en charge pour la gamme complète de chaînes JSON valides. Par exemple, Ruby n'accepte que les objets et les tableaux comme racine, tandis que PHP inclut expressément les types scalaires et NULL dans ses capacités d'encodage et de décodage.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn