请问向前台返回数据时候加不加 toString()的区别,具体看问题

jsonArray.toString()和jsonarray前台显示结果一样


JSONArray jsonArray = new JSONArray();
            for (int i = 0; i < list.size(); i++) {
                studentInfo student = list.get(i);
                Map<String, Object> map = new HashMap<String, Object>();
                map.put("num", student.getNum());
                map.put("name", student.getName());
                map.put("sex", student.getSex());
                map.put("birth", student.getBirth());
                map.put("address", student.getAddress());
                System.out.println(map);//map对应的形式:{address=地球, num=1, sex=男, name=王克, birth=2000.7.10}
                JSONObject StudentObj = new JSONObject(map);
                System.out.println(StudentObj);//JSON对应形式:{"name":"王克","birth":"2000.7.10","address":"地球","num":"1","sex":"男"}
                jsonArray.put(StudentObj);
                System.out.println(jsonArray);//JSONArray对应形式:
            }
            // 向客户端返回json结果
            response.getWriter().print(jsonArray);

前台界面

  //以ajax的方式检索教师信息
        function RetrieveBooks(){
            $.post("list.action",{},function (data){
                $("#TeachersTable tr:gt(0)").remove();
                for (var i = 0; i < data.length; i++) {
                    //插入表行
                    var trHtml = "<tr id = "+data[i].num +"><td>"+data[i].num +"</td><td>"+ data[i].name + "</td><td>"
                        + data[i].sex + "</td><td>" + data[i].birth
                        + "</td><td>"+data[i].address+" </td><td><a href=\"#\" class=\"updateLink\">修改</a> <a href=\"#\" class=\"deleteLink\">删除</a></td></tr>";
                    $("#TeachersTable").append(trHtml);

                }
            },"json")

jsonArray是json数组,jsonArray.toString()是转换为json字符串