JSONObject与JSONArray使用方法解析


Posted in Javascript onSeptember 28, 2020

需要导入:json-lib-2.2.2-.jar包

1.json:就是一个键对应一个值,超级简单的一对一关系。对于json嵌套,只要记住符号“:”前是键,符号后是值大括号成对找.
String arrayStr=[{name1:{name2:{name3:'value1',name4:'value2'}}},{}]

取出name4值过程步骤:

  • 1)将以上字符串转换为JSONArray对象;
  • 2)取出对象的第一项,JSONObject对象;
  • 3)取出name1的值JSONObject对象;
  • 4)取出name2的值JSONObject对象;
  • 5)取出name4的值value2;

示例中json数组格式的字符串可以通过方法直接转换为JSONArray的格式: 

JSONArray.fromObject(String)
JSONArray getJsonArray=JSONArray.fromObject(arrayStr);//将结果转换成JSONArray对象的形式
JSONObject getJsonObj = getJsonArray.getJSONObject(0);//获取json数组中的第一项
String result=getJsonObj.getJSONObject("name1").getJSONObject("name2").getJSONObject("name4");

2.JSONObject

json对象,就是一个键对应一个值,使用的是大括号{ },如:{key:value}

3.JSONArray

json数组,使用中括号[ ],只不过数组里面的项也是json键值对格式的

Json对象中添加的是键值对,JSONArray中添加的是Json对象

JSONObject Json = new JSONObject();
JSONArray JsonArray = new JSONArray();
Json.put("key", "value");//JSONObject对象中添加键值对
JsonArray.add(Json);//将JSONObject对象添加到Json数组中

4.Map map和json都是键值对,不同的是map中键值对中间用等号分开,json中键值对中间用冒号分开。其实json就是一种特殊形式的map.

JSONObject与JSONArray作用:不刷新jsp页面对查询的结果做回写显示:

/*示例:*/
    Map<String,String> strmap=new JSONObject();
    Map map = new HashMap();
    map.put("cudenddate", cudenddate);
    map.put("cudbegindate", cudbegindate);
    List auditList = kyDataHeadAuditService.getAuditAllDataList(map,paper, currentPage, pageDirection, 10);
    
    map.put("auditList",auditList); 
    map.put("currentpage", String.valueOf(paper.getCurrentpage()));
    map.put("allSize", String.valueOf(paper.getAllSize()));
    response.getWriter().write(JSONArray.fromObject(map).toString());
    response.getWriter().flush();
    response.getWriter().close();

$.post("kyDataHeadAuditAction.do?action=findKyHeadAuditList",{
            orgLevel : levs,
            sbtype : sbType,
            jytype : jyType}
          function(data) {
            var arr = data[0].auditList;
            if (arr.length > 0) {
              var html = "";
              for ( var i = 0; i < arr.length; i++) {// 更新列表
                var kyReportBean = arr[i];
                html += "<tr><td><input type='checkbox' name='kyreportid' value='"
                    + kyReportBean.kyReportid
                    + "'/> </td>";
                html += "<td align='center'>"
                    + kyReportBean.kyReportid
                    + " </td>";
                html += "<td align='center'><input type='button' value='查看' onclick=\"bmSearchAudit('kyDataAuditAction.do?action=searchAuditDetail&insurCode="+kyReportBean.kyReportid+"')\">" + " </td></tr>";
              }
              var allsize = data[0].allSize;
              var currentpage = data[0].currentpage;
              cleartable(0);// 清空表格
              $("#tablelist").append(html);
              hideLoading();// 取消动画
              $("#allSize").append(data[0].allSize);
              $("#currentpage").append((parseInt(data[0].currentpage) + parseInt(1)));
              changePage(allsize, currentpage);// 更新翻页
              $("#currentpagevalue").val(currentpage);
            } else
              cleartable(0);
            hideLoading();// 取消动画

          }, "json");

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Javascript 相关文章推荐
javascript中常用编程知识
Apr 08 Javascript
JS的encodeURI和java的URLDecoder.decode使用介绍
May 08 Javascript
javascript去除字符串中所有标点符号和提取纯文本的正则
Jun 07 Javascript
jQuery删除一个元素后淡出效果展示删除过程的方法
Mar 18 Javascript
JavaScript验证Email(3种方法)
Sep 21 Javascript
轻松学习Javascript闭包函数
Dec 15 Javascript
AngularJS 让人爱不释手的八种功能
Mar 23 Javascript
jQuery焦点图轮播效果实现方法
Dec 19 Javascript
js中的闭包实例展示
Nov 01 Javascript
javascript实现视频弹幕效果(两个版本)
Nov 28 Javascript
JavaScript实现浏览器网页自动滚动并点击的示例代码
Dec 05 Javascript
jquery实现淡入淡出轮播图效果
Dec 13 jQuery
OpenLayer3自定义测量控件MeasureTool
Sep 28 #Javascript
Openlayers实现距离面积测量
Sep 28 #Javascript
Openlayers+EasyUI Tree动态实现图层控制
Sep 28 #Javascript
JS sort排序详细使用方法示例解析
Sep 27 #Javascript
vue中实现点击变成全屏的多种方法
Sep 27 #Javascript
通过实例解析json与jsonp原理及使用方法
Sep 27 #Javascript
React 条件渲染最佳实践小结(7种)
Sep 27 #Javascript
You might like
php中批量删除Mysql中相同前缀的数据表的代码
2011/07/01 PHP
php遍历目录下文件并按修改时间排序操作示例
2019/07/12 PHP
Javascript中eval函数的使用方法与示例
2007/04/09 Javascript
jquery全选/全不选/反选另一种实现方法(配合原生js)
2013/04/07 Javascript
JavaScript调用ajax获取文本文件内容实现代码
2014/03/28 Javascript
js实现字符串转日期格式的方法
2015/05/20 Javascript
JavaScript实现点击单元格改变背景色的方法
2016/02/12 Javascript
JavaScript 身份证号有效验证详解及实例代码
2016/10/20 Javascript
AngularJS入门教程之MVC架构实例分析
2016/11/01 Javascript
JS自定义混合Mixin函数示例
2016/11/26 Javascript
Move.js入门
2017/02/08 Javascript
jQuery.Ajax()的data参数类型详解
2017/07/23 jQuery
jquery在vue脚手架中的使用方式示例
2017/08/29 jQuery
vue form check 表单验证的实现代码
2018/12/09 Javascript
Easyui 关闭jquery-easui tab标签页前触发事件的解决方法
2019/04/28 jQuery
弱类型语言javascript中 a,b 的运算实例小结
2019/08/07 Javascript
JS 事件机制完整示例分析
2020/01/15 Javascript
微信小程序仿通讯录功能
2020/04/09 Javascript
javascript 使用sleep函数的常见方法详解
2020/04/26 Javascript
react项目从新建到部署的实现示例
2021/02/19 Javascript
Python查询Mysql时返回字典结构的代码
2012/06/18 Python
Python使用Flask框架获取当前查询参数的方法
2015/03/21 Python
python嵌套函数使用外部函数变量的方法(Python2和Python3)
2016/01/31 Python
Python 类与元类的深度挖掘 II【经验】
2016/05/06 Python
Python多线程实现同步的四种方式
2017/05/02 Python
Python实现滑动平均(Moving Average)的例子
2019/08/24 Python
Pandas DataFrame求差集的示例代码
2020/12/13 Python
德国最新街头服饰网上商店:BODYCHECK
2019/09/15 全球购物
会计实习自我鉴定
2013/12/04 职场文书
工程项目经理岗位职责
2013/12/15 职场文书
信息管理专业自荐书
2014/06/05 职场文书
邓小平文选读书笔记
2015/06/29 职场文书
《黄山奇石》教学反思
2016/02/18 职场文书
小学教师教学反思
2016/02/24 职场文书
《思路决定出路》读后感3篇
2019/12/11 职场文书
Golang标准库syscall详解(什么是系统调用)
2021/05/25 Golang