JSON对象和JSON字符串间的相互转换

来源:互联网 发布:盗图投诉淘宝复审 编辑:程序博客网 时间:2024/06/06 04:40

json对象和json字符串间的相互转换


json (javascript对象标识)


其实就是通过组合JavaScript中的数组[ ]和键值对(hash) 对象来描述数据结构

JSON中两种结构:

1.数组用来表示有序结构
2.键值对用来表示对应关系

链接 : JSON官网


在javascript中json字符串和json对象的相互转换方法


<script>    //声明一个json 对象     var class = {        "students":[            {"name":"小明""id":1},            {"name":"小红""id":2}        ]    }    //获取json对象中小明的id    var id = class.students[0].id;//使用方法和对象调用方法一致</script>

在json中如何将json对象转化为json字符串(数据传递要以字符串的形式例如ajax):

    //声明一个json对象     var  obj  = class ;    //将json对象装还为字符串    // 1中方法    var jsonStr = JSON.stringify(obj);    //2中方法    var jsonStr = obj.toJSONString();    //以上两种方法都可以将json对象转化为JSON字符串

服务端传来的json字符串如何转化为json对象:

    //json字符串    var str = jsonStr;//引用上面的字符串;    var obj ;    //1.    obj = str.parseJSON();    //2.    obj = JSON.parse(str);    //3.    obj = eval("("+str+")");

特别注意:如果obj本来就是一个JSON对象,那么使用eval()函数转换后(哪怕是多次转换)还是JSON对象,但是使用parseJSON()函数处理后会有问题(抛出语法异常)。

注意:
其中eval()方法是javascript提供的方法
在使用时 必须加上”(“”)”一减少一些不必要的错误
此方法 解释为: 执行( )中的javeScript代码
详情请看:WSCschool


java端json的使用和json对象字符串的相互转换


java端使用json转换一般都会引入json转换的jar
这里使用google的GSON
1.引入gson的jar 到maven中
2.使用

 //将Student对象转换为json字符串  假设student中有id和name两个字段 Student student = new Student(); student.setId(1); student.setName("小明"); GSON gson = new GSON();//创建gson对象 //将对象转换为json字符串 String str = gson.toJson(student); //如上将json字符串转换为student对象 Student stu = gson.fromJson(str,Student.class);
原创粉丝点击