JSON
2017-07-28 本文已影响0人
shadow123
JSON(JavaScript Object Notation)是一种轻量级的数据交换格式。用来序列化对象、数组、数值、字符串、布尔值和 null 。JSON 不支持 JavaScript 中的特殊值 undefined、symbol、变量、函数、对象实例。
简单值
简单值:表示字符串、数值、布尔值和 null。
// 有效的JSON数据
5
"Hello World"
JavaScript 字符串与 JSON 字符串的最大区别在于,JSON 字符串必须使用双引号(单引号会导致语法错误)。
对象
JSON 中的对象与 JavaScript 字面量稍微有一些不同。对象作为一种复杂数据类型,表示的是一组无序的键值对。
// JavaScript
var object = {
"name": "Jake",
"age": 26
};
// JSON
{
"name": "Jake",
"age": 26
}
与 JavaScript 的对象字面量相比,JSON 对象有两个地方不一样。首先,没有声明变量( JSON 中没有变量的概念)。其次,没有末尾的分号。JSON 中对象的属性必须加双引号,属性的值可以是简单值,也可以是复杂类型值。
数组
JSON 中第二种复杂数据类型是数组。
// JavaScript
var array = [25,"hi",true];
// JSON
[25,"hi",true]
方法
JSON 对象有两个方法:stringify() 和 parse() 。
stringify() 方法
JSON.stringify() 方法将一个 JavaScript 值转换为一个 JSON 字符串。
JSON.stringify({}); // '{}'
JSON.stringify(true); // 'true'
JSON.stringify("foo"); // '"foo"'
JSON.stringify([1, "false", false]); // '[1,"false",false]'
JSON.stringify({ x: 5 }); // '{"x":5}'
JSON.stringify({x: 5, y: 6}) // '{"x":5,"y":6}'
parse() 方法
JSON.parse() 方法把一个 JSON 字符串解析为原生 JavaScript 值。
JSON.parse('{}'); // {}
JSON.parse('true'); // true
JSON.parse('"foo"'); // "foo"
JSON.parse('[1, 5, "false"]'); // [1, 5, "false"]
JSON.parse('null'); // null