亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb

首頁 > 編程 > JavaScript > 正文

jQuery怎么解析Json字符串(Json格式/Json對象)

2019-11-20 22:25:55
字體:
來源:轉載
供稿:網友

json數據是我們常用的一種小型的數據實時交換的一個東西,他可以利用jquery或js進行解析,下面我來介紹jquery解析json字符串方法。

我們先以解析上例中的comments對象的JSON數據為例,然后再小結jQuery中解析JSON數據的方法。

上例中得到的JSON數據如下,是一個嵌套JSON:

{ "comments": [  {   "content": "很不錯嘛",   "id": 1,   "nickname": "納尼"  },  {   "content": "喲西喲西",   "id": 2,   "nickname": "小強"  } ]}

獲取JSON數據,在jQuery中有一個簡單的方法 $.getJSON() 可以實現。

下面引用的是官方API對$.getJSON()的說明:

jQuery.getJSON( url, [data,] [success(data, textStatus, jqXHR)] )
urlA string containing the URL to which the request is sent.

dataA map or string that is sent to the server with the request.

success(data, textStatus, jqXHR)A callback function that is executed if the request succeeds.

回調函數中接受三個參數,第一個書返回的數據,第二個是狀態,第三個是jQuery的XMLHttpRequest,我們只使用到第一個參數。

$.each()是用來在回調函數中解析JSON數據的方法,下面是官方文檔:

jQuery.each( collection, callback(indexInArray, valueOfElement) )
collectionThe object or array to iterate over.

callback(indexInArray, valueOfElement)The function that will be executed on every object.

$.each()方法接受兩個參數,第一個是需要遍歷的對象集合(JSON對象集合),第二個是用來遍歷的方法,這個方法又接受兩個參數,第一個是遍歷的index,第二個是當前遍歷的值。哈哈,有了$.each()方法JSON的解析就迎刃而解咯。(*^__^*) 嘻嘻……

function loadInfo() { $.getJSON("loadInfo", function(data) {  $("#info").html("");//清空info內容  $.each(data.comments, function(i, item) {   $("#info").append(     "<div>" + item.id + "</div>" +      "<div>" + item.nickname + "</div>" +     "<div>" + item.content + "</div><hr/>");  });  });}

正如上面,loadinfo是請求的地址,function(data){...}就是在請求成功后的回調函數,data封裝了返回的JSON對象,在下面的$.each(data.comments,function(i,item){...})方法中data.comments直接到達JSON數據內包含的JSON數組:

[ {  "content": "很不錯嘛",  "id": 1,  "nickname": "納尼" }, {  "content": "喲西喲西",  "id": 2,  "nickname": "小強" }]

$.each()方法中的function就是對這個數組進行遍歷,再通過操作DOM插入到合適的地方的。在遍歷的過程中,我們可以很方便的訪問當前遍歷index(代碼中的”i“)和當前遍歷的值(代碼中的”item“)。

上例的運行結果如下:

如果返回的JSON數據比較復雜,則只需多些$.each()進行遍歷即可,嘿嘿。例如如下JSON數據:

{ "comments": [  {   "content": "很不錯嘛",   "id": 1,   "nickname": "納尼"  },  {   "content": "喲西喲西",   "id": 2,   "nickname": "小強"  } ], "content": "你是木頭人,哈哈。", "infomap": {  "性別": "男",  "職業": "程序員",  "博客": "http://www.cnblogs.com/codeplus/" }, "title": "123木頭人"}

js如下:

function loadInfo() { $.getJSON("loadInfo", function(data) {  $("#title").append(data.title+"<hr/>");  $("#content").append(data.content+"<hr/>");  //jquery解析map數據  $.each(data.infomap,function(key,value){   $("#mapinfo").append(key+"----"+value+"<br/><hr/>");  });  //解析數組  $.each(data.comments, function(i, item) {   $("#info").append(     "<div>" + item.id + "</div>" +      "<div>" + item.nickname + "</div>" +     "<div>" + item.content + "</div><hr/>");  });  });}

值得注意的是,$.each()遍歷Map的時候,function()中的參數是key和value,十分方便。

上例的運行效果:

jQuery很強大,so...更多的了解還得參考文檔,(ˇˍˇ) 想~

下面是其他網友的補充:

一、jQuery解析Json數據格式:

使用這種方法,你必須在Ajax請求中設置參數:
1 dataType: "json"
獲取通過回調函數返回的數據并解析得到我們想要的值,看源碼:

jQuery.ajax({ url: full_url, dataType: "json", success: function(results) { alert(result.name); } }); 

通常情況下,你可以從后臺返回JSON數據,前臺就交給jQuery啦,哈哈!!
jquery異步請求將type(一般為這個配置屬性)設為“json”,或者利用$.getJSON()方法獲得服務器返回,那么就不
需要eval()方法了,因為這時候得到的結果已經是json對象了,只需直接調用該對象即可,這里以$.getJSON方法為
例說

例1
代碼如下:

var data=" { root: [ {name:'1',value:'0'}, {name:'6101',value:'北京市'}, {name:'6102',value:'天津市'}, {name:'6103',value:'上海市'}, {name:'6104',value:'重慶市'}, {name:'6105',value:'渭南市'}, {name:'6106',value:'延安市'}, {name:'6107',value:'漢中市'}, {name:'6108',value:'榆林市'}, {name:'6109',value:'安康市'}, {name:'6110',value:'商洛市'} ] }"; 

jquery

$.getJSON("http://sanic.cnblogs.com/",{param:"sanic"},function(data){ //此處返回的data已經是json對象 //以下其他操作同第一種情況 $.each(data.root,function(idx,item){ if(idx==0){ return true;//同countinue,返回false同break } alert("name:"+item.name+",value:"+item.value); }); }); 

二、jQuery解析Json對象:

jQuery提供了另一種方法“parseJSON”,這需要一個標準的JSON字符串,并返回生成的JavaScript對象。讓我們來看
看語法:

data = $.parseJSON(string);
看看它是如何運用的到實際開發中的:

jQuery.ajax({ url: dataURL, success: function(results) { var parsedJson = jQuery.parseJSON(results); alert(parsedJson.name); } }); 

PS:關于json操作,這里再為大家推薦幾款比較實用的json在線工具供大家參考使用:

在線JSON代碼檢驗、檢驗、美化、格式化工具:
http://tools.VeVB.COm/code/json

JSON在線格式化工具:
http://tools.VeVB.COm/code/jsonformat

在線XML/JSON互相轉換工具:
http://tools.VeVB.COm/code/xmljson

json代碼在線格式化/美化/壓縮/編輯/轉換工具:
http://tools.VeVB.COm/code/jsoncodeformat

在線json壓縮/轉義工具:
http://tools.VeVB.COm/code/json_yasuo_trans

發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
亚洲香蕉成人av网站在线观看_欧美精品成人91久久久久久久_久久久久久久久久久亚洲_热久久视久久精品18亚洲精品_国产精自产拍久久久久久_亚洲色图国产精品_91精品国产网站_中文字幕欧美日韩精品_国产精品久久久久久亚洲调教_国产精品久久一区_性夜试看影院91社区_97在线观看视频国产_68精品久久久久久欧美_欧美精品在线观看_国产精品一区二区久久精品_欧美老女人bb
久久精品中文字幕电影| 亚洲大尺度美女在线| 国产视频精品xxxx| 日韩麻豆第一页| 一区二区三欧美| 精品一区二区三区四区| 日韩视频免费在线| 欧美成人免费全部观看天天性色| 亚洲第一精品福利| 中文字幕日韩精品有码视频| 欧美在线性爱视频| 热门国产精品亚洲第一区在线| 亚洲а∨天堂久久精品9966| 69久久夜色精品国产7777| 国产成人中文字幕| 91手机视频在线观看| 日韩中文在线不卡| 亚洲专区在线视频| 日韩av大片免费看| 色悠悠久久久久| 国产精品老女人精品视频| 亚洲欧洲成视频免费观看| 国模极品一区二区三区| 日韩高清人体午夜| 久久久爽爽爽美女图片| 国外成人在线播放| 国产精品视频午夜| 精品中文字幕久久久久久| 国产狼人综合免费视频| 亚洲黄页网在线观看| 5278欧美一区二区三区| 欧美限制级电影在线观看| 亚洲久久久久久久久久久| 国产精品久久久久av| 国产精品99一区| 国产精品久久久久久久一区探花| 国产亚洲免费的视频看| 亚洲一区二区三区四区在线播放| 日韩精品在线观看一区二区| 午夜精品一区二区三区视频免费看| 国产精品ⅴa在线观看h| 亚洲精品国产精品国产自| 日韩欧美极品在线观看| 日韩成人小视频| 欧美丰满老妇厨房牲生活| 日韩中文字幕网| 欧美日韩综合视频| 亚洲在线观看视频网站| 久久久久久久国产精品视频| 久久久www成人免费精品张筱雨| 91美女片黄在线观| 成人黄色av免费在线观看| 国产欧美日韩精品丝袜高跟鞋| 国产精品自在线| 操日韩av在线电影| 亚洲天堂视频在线观看| 91在线无精精品一区二区| 欧美日韩高清区| 欧美插天视频在线播放| 亚洲在线免费视频| 欧美高清视频在线| 久热精品视频在线| 国产精品久久久久久久电影| 欧美视频在线观看免费网址| 亚洲国产精久久久久久| 国产精品视频区| 欧美影院在线播放| 日韩美女视频免费在线观看| 欧美成人免费在线观看| 日本aⅴ大伊香蕉精品视频| 亚洲影院色无极综合| 国产精品午夜一区二区欲梦| 国产精品视频99| 亚洲精品国产综合久久| 亚洲精品电影网在线观看| 国产精品男女猛烈高潮激情| 精品国产一区二区三区久久狼5月| 亚洲人成电影网站| 97视频在线观看播放| 日韩亚洲成人av在线| 精品国产一区二区三区久久| 精品久久久久久中文字幕| 成人黄色大片在线免费观看| 国产日韩视频在线观看| 国产成人精品av| 国产欧美日韩精品专区| 欧美香蕉大胸在线视频观看| 亚洲人成网在线播放| 日本伊人精品一区二区三区介绍| 92福利视频午夜1000合集在线观看| 日本亚洲欧美成人| 亚洲伊人一本大道中文字幕| 久久精品夜夜夜夜夜久久| 国产精品入口尤物| 欧美在线不卡区| 亚洲精品成a人在线观看| 日韩免费在线视频| 欧美一级电影久久| 久久在线观看视频| 亚洲精品一区在线观看香蕉| 欧美亚洲在线观看| 国产精品视频永久免费播放| 久久久女人电视剧免费播放下载| 日韩免费精品视频| 欧美老妇交乱视频| 国产日本欧美在线观看| 日韩精品在线免费播放| 欧美成人午夜视频| 91精品国产高清久久久久久91| 久久久久久久影视| 色伦专区97中文字幕| 91精品视频在线免费观看| 亚洲国产日韩欧美在线动漫| 色综合天天综合网国产成人网| 久久在线免费视频| 992tv在线成人免费观看| 国产在线观看精品一区二区三区| 91国偷自产一区二区三区的观看方式| 最近2019好看的中文字幕免费| 97视频人免费观看| 欧美一区二区视频97| 日韩av电影中文字幕| 日韩中文字在线| www.日韩av.com| 国内精品久久久久久影视8| 亚洲欧美制服综合另类| 在线播放亚洲激情| 欧美国产精品人人做人人爱| 久久资源免费视频| 日韩av免费观影| 国内伊人久久久久久网站视频| 成人网页在线免费观看| 91网在线免费观看| 亚洲精品综合久久中文字幕| 欧美日韩国产999| 久久午夜a级毛片| 高清欧美一区二区三区| 久久久久久久成人| 国产精品高潮呻吟视频| 国产精品亚洲综合天堂夜夜| 日韩av一区在线观看| 在线精品91av| 日韩欧美国产网站| 成人乱色短篇合集| 精品欧美一区二区三区| 97在线观看免费高清| 欧美激情成人在线视频| 国产日韩欧美视频| 97视频网站入口| 正在播放国产一区| 国产日韩精品一区二区| 国产欧美精品va在线观看| 琪琪亚洲精品午夜在线| 亚洲 日韩 国产第一| 色妞色视频一区二区三区四区| 综合国产在线视频| 91超碰中文字幕久久精品| 成人网页在线免费观看| 欧美成人午夜影院| 欧美激情小视频| 亚洲精品白浆高清久久久久久| 亚洲小视频在线| 欧美精品免费播放| 亚洲精品成a人在线观看|