Maison > interface Web > js tutoriel > le corps du texte

Quel est le format JSON ? Introduction à l'utilisation du format JSON (avec code)

不言
Libérer: 2018-11-20 15:16:49
avant
3748 Les gens l'ont consulté

Le contenu de cet article porte sur ce qu'est le format JSON ? L'introduction de l'utilisation du format JSON (avec code) a une certaine valeur de référence. Les amis dans le besoin peuvent s'y référer. J'espère que cela vous sera utile.

1 : Définition du format JSON

JSON (JavaScript Object Notation) est un format léger d'échange de données. Facile à lire et à écrire pour les humains. Il est également facile à analyser et à générer pour les machines. Il a été proposé par Douglas Crockford en 2001 pour remplacer le format XML encombrant et encombrant.

2. Règles de format JSON

  1. La valeur du type composite ne peut être qu'un tableau ou un objet, pas une fonction, un objet d'expression régulière, ou un objet date.

  2. Il n'existe que quatre types simples de valeurs : chaîne, valeur numérique (doit être exprimée en décimal), valeur booléenne et null (NaN, Infinity, -Infinity et undefined ne peuvent pas être utilisés) .

  3. Les chaînes doivent être représentées par des guillemets doubles, les guillemets simples ne peuvent pas être utilisés.

  4. Le nom de clé de l'objet doit être placé entre guillemets doubles.

  5. Aucune virgule ne peut être ajoutée après le dernier membre d'un tableau ou d'un objet.

Les tableaux vides et les objets vides sont tous deux des valeurs JSON qualifiées, et null lui-même est également une valeur JSON qualifiée

以下是合格的 JSON 值。

["one", "two", "three"]

{ "one": 1, "two": 2, "three": 3 }

{"names": ["张三", "李四"] }

[ { "name": "张三"}, {"name": "李四"} ]
Copier après la connexion
以下是不合格的 JSON 值。

{ name: "张三", 'age': 32 }  // 属性名必须使用双引号

[32, 64, 128, 0xFFF] // 不能使用十六进制值

{ "name": "张三", "age": undefined } // 不能使用undefined

{ "name": "张三",
  "birthday": new Date('Fri, 26 Aug 2011 07:13:10 GMT'),
  "getName": function() {
      return this.name;
  }
} // 不能使用函数和日期对象
Copier après la connexion

3. Méthodes de traitement des données au format JSON

1. JSON.Stringify

1) Objectif
est utilisé pour convertir une valeur en chaîne. La chaîne est conforme au format JSON et peut être restaurée par la méthode JSON.parse.

2) Donnez un exemple

JSON.stringify('abc') // ""abc""
JSON.stringify(1) // "1"
JSON.stringify(false) // "false"
JSON.stringify([]) // "[]"
JSON.stringify({}) // "{}"

JSON.stringify([1, "false", false])
// '[1,"false",false]'

JSON.stringify({ name: "张三" })
// "{"name":"张三"}"
Copier après la connexion

3) Résumé
Écrivez d'abord "" pour convertir au format chaîne , puis convertissez le contenu qui doit être converti selon les règles du format json. Ajoutez "" à "", puis mettez le contenu converti dans "" et appelez-le un jour

. 4 ) Cas particulier
Les contenus non supportés par le format json seront filtrés, répartis en 3 situations

  1. Objet original

Objet original Si la valeur d'un membre est indéfinie, une fonction ou un objet XML, ce membre sera filtré

var obj = {
  a: undefined,
  b: function () {}
};

JSON.stringify(obj) // "{}"
Copier après la connexion

Array
Si le membre du tableau est indéfini, une fonction ou un objet XML, alors ces valeurs seront converties en null

var arr = [undefined, function () {}];
JSON.stringify(arr) // "[null,null]"
Copier après la connexion

3. Objet régulier
L'objet régulier sera converti en objet vide.

JSON.stringify(/foo/) // "{}"
Copier après la connexion

2. JSON.parse()

1) Objectif
La méthode JSON.parse est utilisée pour convertir la chaîne de format JSONConvertir en objet.

2) Par exemple

JSON.parse('{}') // {}
JSON.parse('true') // true
JSON.parse('"foo"') // "foo"
JSON.parse('[1, 5, "false"]') // [1, 5, "false"]
JSON.parse('null') // null

var o = JSON.parse('{"name": "张三"}');
o.name // 张三
Copier après la connexion

3) Cas particulier
Si la chaîne entrante n'est pas dans un format JSON valide, La méthode JSON.parse signalera une erreur.

JSON.parse("'String'") // illegal single quotes
// SyntaxError: Unexpected token ILLEGAL
Copier après la connexion

4) Pièges rencontrés
L'une des cases rouges contient des guillemets simples et l'autre contient des guillemets doubles. Les deux fonctionnent correctement.
Cela représente les guillemets utilisés pour indiquer que la valeur est une chaîne. Vous pouvez utiliser des guillemets simples ou doubles, mais les guillemets indiquant que le contenu est au format json doivent être écrits entre guillemets doubles

Quel est le format JSON ? Introduction à lutilisation du format JSON (avec code)


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!

Étiquettes associées:
source:segmentfault.com
Déclaration de ce site Web
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
Tutoriels populaires
Plus>
Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal
À propos de nous Clause de non-responsabilité Sitemap
Site Web PHP chinois:Formation PHP en ligne sur le bien-être public,Aidez les apprenants PHP à grandir rapidement!