一、Json字符串和Json对象定义:
本文中的示例采用的是:fastjson。
1、定义:
- JSON就是一串字符串 只不过元素会使用特定的符号标注;
- JSONObject是一个{}包裹起来的一个对象(Object),{} 双括号表示对象;
- JSONArray则是[]包裹起来的一个数组(Array),[] 中括号表示数组;
2、Json字符串:
所谓字符串:单引号或者双引号引起来,是一个String类型的字符串:如下:
var person='{
"name":"shily","sex":"女","age":"23"}';//json字符串 console.log(person) console.log(person.name) console.log(typeof person)
讯享网
3、Json对象:
最显著的特征:对象的值可以用 “对象.属性” 进行访问,如下:
讯享网var person={
"name":"shily","sex":"女","age":"23"}//json对象 console.log(person); console.log(person.name); console.log(typeof person);


4、Json数组:
{
"name": "Michael"} 可以理解为是一个json对象 而 [{
"name": "Michael"},{
"name": "Jerry"}]就表示包含两个对象的json数组
二、Json对象与Json字符串的相互转化:
- 在js中能够定义json对象和json字符串;
- 在java中只能定义json字符串,不能直接定义json对象,但是可以通过转换,将json串转换为json对象。
1、在前端js中的方式:
- Json字符串转化为Json对象:
讯享网var str = '{
"name":"shily","sex":"女","age":"23"}'; var strToObj = JSON.parse(str); console.log(strToObj); console.log(typeof strToObj); console.log(strToObj.name)
- Json对象转化为Json字符串:
var obj = {
"name":"shily","sex":"女","age":"23"}//json对象 var objToStr = JSON.stringify(obj); console.log(objToStr); console.log(typeof objToStr)
2、在后端java代码中的方式:
- JSON 字符串 转 JSONObject 对象:
讯享网public static void main(String[] args) {
//Json字符串转换为Json对象 String jsonStr = "{\"addr\":\"北京\",\"sex\":\"男\",\"name\":\"张三\",\"age\":22}"; JSONObject jsonObject = JSONObject.parseObject(jsonStr); System.out.println(jsonObject.getString("name")+","+jsonObject.getString("age")); }
输出结果:
张三,22
- JSONObject 转 JSON 字符串:
讯享网public static void main(String[] args) {
//Json对象转换为Json字符串 JSONObject jsonObject=new JSONObject(); jsonObject.put("name","张三"); jsonObject.put("age",22); jsonObject.put("sex","男"); jsonObject.put("addr","北京"); String str = JSONObject.toJSONString(jsonObject); System.out.println(str); }
输出结果:
{
"sex":"男","name":"张三","addr":"北京","age":22}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容,请联系我们,一经查实,本站将立刻删除。
如需转载请保留出处:https://51itzy.com/kjqy/13676.html