JSONObject與JSONArray使用方法解析
需要導(dǎo)入:json-lib-2.2.2-.jar包
1.json:就是一個鍵對應(yīng)一個值,超級簡單的一對一關(guān)系。對于json嵌套,只要記住符號“:”前是鍵,符號后是值大括號成對找.
String arrayStr=[{name1:{name2:{name3:'value1',name4:'value2'}}},{}]
取出name4值過程步驟:
- 1)將以上字符串轉(zhuǎn)換為JSONArray對象;
- 2)取出對象的第一項,JSONObject對象;
- 3)取出name1的值JSONObject對象;
- 4)取出name2的值JSONObject對象;
- 5)取出name4的值value2;
示例中json數(shù)組格式的字符串可以通過方法直接轉(zhuǎn)換為JSONArray的格式:
JSONArray.fromObject(String)
JSONArray getJsonArray=JSONArray.fromObject(arrayStr);//將結(jié)果轉(zhuǎn)換成JSONArray對象的形式
JSONObject getJsonObj = getJsonArray.getJSONObject(0);//獲取json數(shù)組中的第一項
String result=getJsonObj.getJSONObject("name1").getJSONObject("name2").getJSONObject("name4");
2.JSONObject
json對象,就是一個鍵對應(yīng)一個值,使用的是大括號{ },如:{key:value}
3.JSONArray
json數(shù)組,使用中括號[ ],只不過數(shù)組里面的項也是json鍵值對格式的
Json對象中添加的是鍵值對,JSONArray中添加的是Json對象
JSONObject Json = new JSONObject();
JSONArray JsonArray = new JSONArray();
Json.put("key", "value");//JSONObject對象中添加鍵值對
JsonArray.add(Json);//將JSONObject對象添加到Json數(shù)組中
4.Map map和json都是鍵值對,不同的是map中鍵值對中間用等號分開,json中鍵值對中間用冒號分開。其實json就是一種特殊形式的map.
JSONObject與JSONArray作用:不刷新jsp頁面對查詢的結(jié)果做回寫顯示:
/*示例:*/ 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");
以上就是本文的全部內(nèi)容,希望對大家的學習有所幫助,也希望大家多多支持腳本之家。
相關(guān)文章
關(guān)于Google發(fā)布的JavaScript代碼規(guī)范你要知道哪些
代碼規(guī)范并不是一種編寫正確JavaScript代碼的規(guī)則,而是為了保持源代碼編寫模式一致的一種選擇。這篇文章給大家介紹了關(guān)于Google發(fā)布的JavaScript代碼規(guī)范你要知道哪些,感興趣的朋友一起看看吧2018-04-04JavaScript高級程序設(shè)計閱讀筆記(六) ECMAScript中的運算符(二)
ECMAScript中的運算符,學習js的朋友可以參考下2012-02-02JavaScript 對象深入學習總結(jié)(經(jīng)典)
JavaScript中,除了五種原始類型(即數(shù)字,字符串,布爾值,null,undefined)之外的都是對象了,所以,不把對象學明白怎么繼續(xù)往下學習呢?本篇文章給大家分享javascript對象深入學習總結(jié),小伙伴們跟著小編一起深入學習吧2015-09-09javascript完整操作Table的增加行,刪除行的列子大全
非常漂亮的js操作table行代碼函數(shù)。比較方便2008-10-10一文詳解JavaScript中的URL和URLSearchParams
URL,稱為統(tǒng)一資源定位器,指互聯(lián)網(wǎng)上能找到資源定位的字符串,而URLSearchParams對象是專門用于處理url網(wǎng)址信息中的查詢字符串,本文就來帶大家深入了解一下二者的使用2023-05-05前端實現(xiàn)列表多條件查詢/搜索功能兩種實現(xiàn)方法
我們在開發(fā)過程中,特別是數(shù)據(jù)庫系統(tǒng)的開發(fā)中經(jīng)常會遇到多條件的查詢狀況這篇文章主要給大家介紹了關(guān)于前端實現(xiàn)列表多條件查詢/搜索功能的兩種實現(xiàn)方法,需要的朋友可以參考下2024-08-08JavaScript實現(xiàn)三級聯(lián)動菜單效果
這篇文章主要為大家詳細介紹了三級聯(lián)動菜單效果,文中示例代碼介紹的非常詳細,具有一定的參考價值,感興趣的小伙伴們可以參考一下2017-08-08