JSON的相关内容
JSON
是什么
JSON
是JavaScript Object Notation
的缩写,是一种轻量级的数据交换格式。JSON
是基于
JavaScript Prograrnming Language, Standard ECMA-262 3rd Edition - December 1999
的一个子集。
JSON
是独立于任何语言的文本格式。易于程序员阅读和编写,同时也易于计算机解析和生成。JSON
的中文官网地址: http://www.json.org/ison-zhhtmnl
JSON
语法规则
JSON
格式的构建比较简单,主要为两种结构:
● “名称/值” 对的集合( A collection of name/value pairs)
。不同的语言中,它被理解为对象(object),纪录(record),结构(struct),字典( dictionary),哈希表(hash table ),
有键列表(keyed list),或者关联数组( associative array)。
● 值的有序列表( An ordered list of values)
。在大部分语言中,它被理解为数组( array)
。JSON
格式中作为值的类型允许是字符串( string)
、数值(number) true、 false、 null 对象(object)或者数组( array)。
JSON
中的键值对集合
JSON
文件
JSON
具有独立的文件,扩展名为“json”
。该文件中允许保存JSON
格式的数据。
{
"name'": "卧龙学苑",
"addr": "保定市复兴中路77号直隶大厦1516室",
"classes": [
"Web前端就业课程",
"Web前端生涯规划课程"
]
}
**注意:**在JSON
文件中编写“名称/值”对的集合时,作为“名称”的Key
必须使用双引号(“”)包裹。
JavaScript
与JSON
JSON
是一种语法,用来序化对象,数组,数值,字符串,布尔值和null
。它基于JavaScrip
t语法,但与之不同:JavaScript
不是JSON,JSON
也不是JavaScript
。
JSON
字符串与JSON
对象
● JSON
字符串就是指在JavaScript
语言中内容格式符合JSON
格式的字符串类型的数据。
var jsonText- '{"name": "卧龙学苑","addr": "保定市复兴中路77号直隶大厦1516室;
● JSON
对象就是指JSON
格式在JavaScript
语言中的具体表现形式为对象或数组。
var jsonObject= {
"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]);//'[1,"false",false]'
JSON.stringify({x:5});// '{"x":5}'
注意:JSON
对象在旧版本的浏览器中不被支持,引入json2.js
文件进行解决。
构建JSON
格式数据
通过Ajax
向服务器端提交一部请求时,允许使用JSON
格式的请求数据。如下示例代码所示:
//使用对象类型存储请求数据
var obj ={
"name":"卧龙学院",
"addr":"保定市复兴中路77号直隶大厦1516室"
}
//将JSON对象转化为JSON字符串
var jsonText = JSON.stringify(onj);
//将构建的请求数据传递给XMLHttpRequest对象的send()方法
httpRequest.send(jsonText);
jQuery
中的Ajax
jQuery
不仅对JavaScript
语言进行了封装,也对Ajax异步交互进行了封装。jQuery
提供了六个Ajax
操作的方法:
load()方法
$.get()方法和$.post()方法
$.ajax()方法
$.getScript()方法和$.getJSON()方法