Spring mvc JSON数据交换格式原理解析
什么是JSON
JSON(JavaScriptObjectNotation,JS对象标记)是一种轻量级的数据交换格式,目前使用特别广泛。
采用完全独立于编程语言的文本格式来存储和表示数据。
简洁和清晰的层次结构使得JSON成为理想的数据交换语言。
易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。
在JavaScript语言中,一切都是对象。因此,任何JavaScript支持的类型都可以通过JSON来表示,例如字符串、数字、对象、数组等。看看他的要求和语法格式:
- 对象表示为键值对,数据由逗号分隔
- 花括号保存对象
- 方括号保存数组
JSON键值对是用来保存JavaScript对象的一种方式,和JavaScript对象的写法也大同小异,键/值对组合中的键名写在前面并用双引号""包裹,使用冒号:分隔,然后紧接着值:
{"name":"QinJiang"}
{"age":"3"}
{"sex":"男"}
JSON和JavaScript对象的关系:
JSON是JavaScript对象的字符串表示法,它使用文本表示一个JS对象的信息,本质是一个字符串。
varobj={a:'Hello',b:'World'};//这是一个对象,注意键名也是可以使用引号包裹的 varjson='{"a":"Hello","b":"World"}';//这是一个JSON字符串,本质是一个字符串
JSON和JavaScript对象互转:
要实现从JSON字符串转换为JavaScript对象,使用JSON.parse()方法:
varobj=JSON.parse('{"a":"Hello","b":"World"}'); //结果是{a:'Hello',b:'World'}
要实现从JavaScript对象转换为JSON字符串,使用JSON.stringify()方法:
varjson=JSON.stringify({a:'Hello',b:'World'}); //结果是'{"a":"Hello","b":"World"}'
代码测试
在web目录下新建一个json-1.html,编写测试内容
JSON_秦疆 //编写一个js的对象 varuser={ name:"黄大姐", age:25, sex:"女" }; //将js对象转换成json字符串 varstr=JSON.stringify(user); console.log(str); //将json字符串转换为js对象 varuser2=JSON.parse(str); console.log(user2.age,user2.name,user2.sex);