JSON
JavaScript Object Notation:JavaScript 对象标记法,一种存储和交换数据的语法
。
JSON 是一种轻量级的数据交换格式。
JSON 是 JS 对象的字符串表示法,它使用文本形式表示一个 JS 对象的信息,本质是一个字符串。JSON 将 JavaScript 对象以文本形式存储。JSON 格式是纯文本的。
当数据在浏览器与服务器之间进行交换时,这些数据只能是文本。
JSON 属于文本,并且我们能够把任何 JavaScript 对象转换为JSON,然后将 JSON 发送到服务器。
也能把从服务器接收到的任何 JSON 转换为 JavaScript 对象。
把 JavaScript 对象转换为 JSON 文本:(JSON.stringify(JS对象);
)
var myObj = { name:"Bill Gates", age:62, city:"Seattle" };
var myJSON = JSON.stringify(myObj);
window.location = "demo_json.php?x=" + myJSON;
把 JSON 文本转换为 JavaScript 对象:(JSON.parse(JSON文本);
)
var myJSON = '{ "name":"Bill Gates", "age":62, "city":"Seattle" }';
var myObj = JSON.parse(myJSON);
document.getElementById("demo").innerHTML = myObj.name;
JSON语法
JSON 语法规则
JSON 语法衍生于 JavaScript 对象标记法语法:
数据以
名称/值对
形式表示 。"key":"value"
数据由逗号
分隔 。,
花括号
容纳对象 。{}
方括号
容纳数组。[]
名称/值:由字段名称构成,后跟冒号和值:"key":"value"
。
JSON 与 JS 对象的形式区别:JSON 名称(键)需要双引号。而 JavaScript 名称不需要;在 JSON 中,字符串值必须由双引号引起来
。JSON 格式几乎等同于 JavaScript 对象。
var obj = {a: 'Hello', b: 'World'}; //这是一个对象,注意键名也是可以使用引号包裹的
var json = '{"a": "Hello", "b": "World"}'; //这是一个 JSON 字符串,本质是一个字符串
JSON 值:
在 JSON 中,值必须是以下数据类型之一:
字符串
数字
对象 (JSON 对象)
数组
布尔值(false 、true)
null