JSON是什么
JSON是JavaScript Object Notation的缩写,是一种轻量级的数据交换格式。JSON是基于JavaScript Prograrmming Language,Standard ECMA-262 3rd Edition-December1999的一个子集。
JSON是独立于任何语言的文本格式。易于程序员阅读和编写,同时也易于计算机解析和生成。
JSON的中文官网地址: http://www.json.org/jison-Zhhtml
JSON语法规则
JSON格式的构建比较简单,主要为两种结构:
- “名称/值”对的集合(Acollection of narme/value pairs)。不同的语言中,它被理解为对象
( object ),纪录(record),结构(struct ),字典( dictionary ),哈希表( hash table ) ,
有键列表(keyed list ),或者关联数组( associative array )。 - 值的有序列表(An ordered list of values )。在大部分语言中,它被理解为数组( array )。
JSON格式中作为值的类型允许是字符串(string)、数值(nurmber)、true、false、null、对象
( object)或者数组( array )。
JSON中的键值对集合
JSON格式中的“名称/值”对的集合是一个无序的“‘名称/值’对”集合。一个对象以“{”(左括
号)开始,“}”(右括号)结束。每个“名称”后跟一个“”(冒号);“‘名称/值’对”之间使
用“”(逗号)分隔。
JSON文件
JSON具有独立的文件,扩展名为“json”。该文件中允许保存JSON格式的数据。
}
"name":"学苑",
"addr":"保定市",
"classes": [
"Web前端就业课程",
"Web前端生涯规划课程"
]
}
注意:在JSON文件中编写“名称/值”对的集合时,作为“名称”的Key必须使用双引号(“”)包
裹。
JavaScript与JSON
JSON是一种语法,用来序列化对象、数组、数值、字符串、布尔值和null。它基于JavaScript语法,但与之不同:JavaScript不是JSON,JSON也不是JavaScript。
JSON字符串与JSON对象
- JSON字符串就是指在JavaScript语言中内容格式符合JSON格式的字符串类型的数据
var jsonText = '{("name":"卧龙学苑","addr":"保定市复兴中路77号直隶大厦1516室"}';
- JSON对象就是指JSON格式在JavaScript语言中的具体表现形式为对象或数组。
var isonObject= {
"name":"卧龙学苑",
"addr":"保定市复兴中路77号直隶大厦1516室
}
JavaScript的JSON对象
JavaScript语言中存在JSON对象,该对象用于实现字符串与对象之间的转换。其提供以下两个方法:
- JSON.parse()方法:解析JSON字符串并返回对应的值。
JSON.parse('{}');//{}
JSON.parse( 'true'); // true
JSON.parse('"foo"");//"foo"
JSON.parse('[1,5, "false"]');//[1,5, "false"]
JSON.parse('null');// null
-
JSON.stringify()方法:返回与指定值对应的JSON字符串。
JSON.stringify({});//'{}' JSON.stringify(true);// 'true' JSON.stringify("foo");//"foo"" JSON.stringify([1, "false", false]);/l'[1,"false",false]' JSON.stringify(i x: 5 });//'{"x":5}'