JavaScript Object Notation(JavaScript 对象表示法)
- JSON 是存储和交换文本信息的语法,类似 XML。
- JSON 比 XML 更小、更快,更易解析。
- 客户端和服务器之间需要互相传递数据,当需要传递复杂数据时需要按照特定的格式将数据进行封装,JSON就是这样一个通用格式.
前后端json传输
JSON 语法规则 JSON 语法是 JavaScript 对象表示语法的子集
- 数据在名称/值对中
- 数据由逗号分隔
- 大括号 {} 保存对象
- 中括号 [] 保存数组,数组可以包含多个对象
JSON 值
- 数字(整数或浮点数)
- 字符串(在双引号中)
- 逻辑值(true 或 false)
- 数组(在中括号中)
- 对象(在大括号中)
- null
//对象 { "name":"军" , "url":"www.celinf.cn" } //数组 [ { "name":"one" , "url":"www.0798.com" }, { "name":"two" , "url":"www.celinf.cn" }, { "name":"three" , "url":"www.jun.com" } ];
JSON 与 XML 的相同之处:
- JSON 和 XML 数据都是 "自我描述" ,都易于理解。
- JSON 和 XML 数据都是有层次的结构
- JSON 和 XML 数据可以被大多数编程语言使用
JSON 与 XML 的不同之处:
- JSON 不需要结束标签
- JSON 更加简短
- JSON 读写速度更快
- JSON 可以使用数组
JSON.parse()
- JSON 通常用于与服务端交换数据。在接收服务器数据时一般是字符串。
- 作用:将一个 JSON 字符串转换为 JavaScript 对象。
//语法 JSON.parse(text[, reviver]) //参数说明 text:必需, 一个有效的 JSON 字符串。 reviver: 可选,一个转换结果的函数, 将为对象的每个成员调用此函数。 //案例 var text = '{ "name":"军" , "url":"www.celinf.cn" }'; var obj = JSON.parse(text);
JSON.stringify()
- JSON 通常用于与服务端交换数据。在向服务器发送数据时一般是字符串
- 作用:将 JavaScript 值转换为 JSON 字符串
//语法 JSON.stringify(value[, replacer[, space]]) //参数说明 //value: 必需, 要转换的 JavaScript 值(通常为对象或数组) //replacer: 可选。用于转换结果的函数或数组。 如果 replacer 为函数,则 JSON.stringify 将调用该函数,并传入每个成员的键和值。 使用返回值而不是原始值。如果此函数返回 undefined则排除成员根对象的键是一个空字符串:"" 如果 replacer 是一个数组,则仅转换该数组中具有键值的成员。 成员的转换顺序与键在数组中的顺序一样。当 value 参数也为数组时,将忽略 replacer 数组。 //space: 可选,文本添加缩进、空格和换行符,如果 space 是一个数字, 则返回值文本在每个级别缩进指定数目的空格,如果 space 大于 10,则文本缩进 10 个空格。 space 也可以使用非数字,如:\t。 //案例 var obj = { "name":"runoob", "alexa":10000, "site":"www.runoob.com"}; var myJSON = JSON.stringify(obj);
学习记录,如有侵权请联系删除