JSON
Présentation
JSON: JavaScript Object Notation.
JSON est une syntaxe pour stocker des données.
JSON est un facile à utiliser alternative à XML.
JSON est le format d'échange de données léger.
JSON est indépendant de la langue *
JSON est "auto-description" et facile à
comprendre.
Introduction
Le format JSON est syntaxiquement identique au code
pour créer des objets JavaScript.
En raison de cette similitude, au lieu d'utiliser un
analyseur (comme XML fait), un programme
JavaScript peut utiliser les fonctions JavaScript
standard pour convertir les données JSON en objets
JavaScript natifs.
Exemple JSON:
<!DOCTYPE html>
<html>
<body>
<h2>JSON Object Creation in JavaScript</h2>
<p id="demo"></p>
<script>
var text = '{"name":"John Johnson","street":"Oslo West 16","phone":"555 1234567"}'
var obj = [Link](text);
[Link]("demo").innerHTML =
[Link] + "<br>" +
[Link] + "<br>" +
[Link];
</script>
</body>
</html>
Syntaxe JSON
Règles de syntaxe JSON :
Syntaxe JSON est un sous-ensemble de la syntaxe de la notation objet JavaScript:
Les données sont en paires nom / valeur
Les données sont séparées par des virgules : "prenom": "Jean", "nom": "Doe"
Crochets tiennent tableaux :
"employees":[
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
]
Une paire nom / valeur se compose d'un nom de domaine (entre guillemets),
suivi de deux points, suivi par une valeur: "prenom": "Jean«
Tout comme en JavaScript, les objets peuvent contenir plusieurs noms / valeurs
paires: {"prenom": "Jean", "nom": "Doe"}
JSON Files
The file type for JSON files is ".json"
The MIME type for JSON text is "application/json"
Exemple :
Exemple json :
{"employees":[
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"}
]}
Exemple xml :
<employees>
<employee>
<firstName>John</firstName> <lastName>Doe</lastName>
</employee>
<employee>
<firstName>Anna</firstName> <lastName>Smith</lastName>
</employee>
<employee>
<firstName>Peter</firstName> <lastName>Jones</lastName>
</employee>
</employees>
Valeurs de JSON :
Un nombre (entier ou à virgule flottante)
Une chaîne (entre guillemets)
Booléenne (vrai ou faux)
Un tableau (entre crochets)
Un objet (entre accolades)
Null
Exemple JSON :
<!DOCTYPE html>
<html>
<body>
<h2>Create a JavaScript Object</h2>
<p id="demo"></p>
<script>
var employees = [
{"firstName":"John", "lastName":"Doe"},
{"firstName":"Anna", "lastName":"Smith"},
{"firstName":"Peter", "lastName":"Jones"},
];
employees[0].firstName="Gilbert";
[Link]("demo").innerHTML =
employees[0].firstName + " " + employees[0].lastName;
</script>
</body>
</html>
Create Object from JSON String
Anna Smith
Exemple JSON avec parse():
<!DOCTYPE html>
<html>
<body>
<h2>Create Object from JSON String</h2>
<p id="demo"></p>
<script>
var text = '{"employees":[' +
'{"firstName":"John","lastName":"Doe" },' +
'{"firstName":"Anna","lastName":"Smith" },' +
'{"firstName":"Peter","lastName":"Jones" }]}';
obj = [Link](text);
[Link]("demo").innerHTML =
[Link][1].firstName + " " + [Link][1].lastName;
</script>
</body>
</html>
Exemple JSON avec eval():
<!DOCTYPE html>
<html>
<body>
<h2>Create Object from JSON String</h2>
<p id="demo"></p>
<script>
var txt = '{"employees":[' +
'{"firstName":"John","lastName":"Doe" },' +
'{"firstName":"Anna","lastName":"Smith" },' +
'{"firstName":"Peter","lastName":"Jones" }]}';
var obj = eval ("(" + txt + ")");
[Link]("demo").innerHTML =
[Link][1].firstName + " " + [Link][1].lastName;
</script>
</body>
</html>