国产99久久精品_欧美日本韩国一区二区_激情小说综合网_欧美一级二级视频_午夜av电影_日本久久精品视频

最新文章專題視頻專題問答1問答10問答100問答1000問答2000關鍵字專題1關鍵字專題50關鍵字專題500關鍵字專題1500TAG最新視頻文章推薦1 推薦3 推薦5 推薦7 推薦9 推薦11 推薦13 推薦15 推薦17 推薦19 推薦21 推薦23 推薦25 推薦27 推薦29 推薦31 推薦33 推薦35 推薦37視頻文章20視頻文章30視頻文章40視頻文章50視頻文章60 視頻文章70視頻文章80視頻文章90視頻文章100視頻文章120視頻文章140 視頻2關鍵字專題關鍵字專題tag2tag3文章專題文章專題2文章索引1文章索引2文章索引3文章索引4文章索引5123456789101112131415文章專題3
問答文章1 問答文章501 問答文章1001 問答文章1501 問答文章2001 問答文章2501 問答文章3001 問答文章3501 問答文章4001 問答文章4501 問答文章5001 問答文章5501 問答文章6001 問答文章6501 問答文章7001 問答文章7501 問答文章8001 問答文章8501 問答文章9001 問答文章9501
當前位置: 首頁 - 科技 - 知識百科 - 正文

JavaScript轉換與解析JSON方法實例詳解_javascript技巧

來源:懂視網 責編:小采 時間:2020-11-27 21:46:04
文檔

JavaScript轉換與解析JSON方法實例詳解_javascript技巧

JavaScript轉換與解析JSON方法實例詳解_javascript技巧:本文實例講述了JavaScript轉換與解析JSON方法。分享給大家供大家參考,具體如下: json格式數據如下: var json = { 'jquery': [{ id: 1, type: ASP.NET, title: JSON全解析}] } alert(json.jquery[0].i
推薦度:
導讀JavaScript轉換與解析JSON方法實例詳解_javascript技巧:本文實例講述了JavaScript轉換與解析JSON方法。分享給大家供大家參考,具體如下: json格式數據如下: var json = { 'jquery': [{ id: 1, type: ASP.NET, title: JSON全解析}] } alert(json.jquery[0].i

本文實例講述了JavaScript轉換與解析JSON方法。分享給大家供大家參考,具體如下:

json格式數據如下:

javascript解析json數據:

補充:jQuery解析json方法:

使用eval函數來解析,jquery的each方法來遍歷

用JQuery解析JSON數據的方法,作為JQuery異步請求的傳輸對象,JQuery請求后返回的結果是json對象,這里考慮的都是服務器返回JSON形式的字符串的形式,對于利用JSONObject等插件封裝的JSON對象,與此亦是大同小異,這里不再做說明。

這里首先給出JSON字符串集,字符串集如下:

這里以JQuery異步獲取的數據類型——json對象和字符串為依據,分別介紹兩種方式獲取到的結果處理方式。

eval()

對于服務器返回的JSON字符串,如果jquery異步請求沒做類型說明,或者以字符串方式接受,那么需要做一次對象化處理,方式不是太麻煩,就是將該字符串放于eval()中執行一次。這種方式也適合以普通javascipt方式獲取json對象,以下舉例說明:

為什么要 eval這里要添加 ("("+data+")"); 呢?

原因在于:eval本身的問題。 由于json是以”{}”的方式來開始以及結束的,在JS中,它會被當成一個語句塊來處理,所以必須強制性的將它轉換成一種表達式。

加上圓括號的目的是迫使eval函數在處理JavaScript代碼的時候強制將括號內的表達式(expression)轉化為對象,而不是作為語句(statement)來執行。舉一個例子,例如對象字面量{},如若不加外層的括號,那么eval會將大括號識別為JavaScript代碼塊的開始和結束標記,那么{}將會被認為是執行了一句空語句。所以下面兩個執行結果是不同的:

對于這種寫法,在JS中,可以到處看到。如: (function()) {}(); 做閉包操作時等。

輸出root的子對象數量 alert(dataObj.root.length); $.each(dataObj.root,fucntion(idx,item){ if(idx==0){ return true; } //輸出每個root子對象的名稱和值 alert("name:"+item.name+",value:"+item.value); })

對于一般的js生成json對象,只需要將$.each()方法替換為for語句即可,其他不變。

服務器返回的JSON字符串

對于服務器返回的JSON字符串,如果jquery異步請求將type(一般為這個配置屬性)設為“json”,或者利 用$.getJSON()方法獲得服務器返回,那么就不需要eval()方法了,因為這時候得到的結果已經是json對象了,只需直接調用該對象即可,這里以$.getJSON方法為例說明數據處理方法:

這里特別需要注意的是方式1中的eval()方法是動態執行其中字符串(可能是js腳本)的,這樣很容易會造成系統的安全問題。所以可以采用一些規避了eval()的第三方客戶端腳本庫,比如JSON in JavaScript就提供了一個不超過3k的腳本庫。

第二種解析方式就是使用Function對象來完成,它的典型應用就是在JQuery中的AJAX方法下的success等對于返回數據data的解析。

此時的data就是一個會解析成一個json對象了。

希望本文所述對大家JavaScript程序設計有所幫助。

聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。TEL:177 7030 7066 E-MAIL:11247931@qq.com

文檔

JavaScript轉換與解析JSON方法實例詳解_javascript技巧

JavaScript轉換與解析JSON方法實例詳解_javascript技巧:本文實例講述了JavaScript轉換與解析JSON方法。分享給大家供大家參考,具體如下: json格式數據如下: var json = { 'jquery': [{ id: 1, type: ASP.NET, title: JSON全解析}] } alert(json.jquery[0].i
推薦度:
標簽: 方法 技巧 js
  • 熱門焦點

最新推薦

猜你喜歡

熱門推薦

專題
Top
主站蜘蛛池模板: 欧美激情在线精品一区二区 | 日韩中文字幕免费版 | 欧美视频精品一区二区三区 | 欧美激情亚洲图片 | 国产产一区二区三区久久毛片国语 | 国产2区 | 一区二区成人国产精品 | 欧美日韩有码 | 九九啪啪 | 国产日韩久久久久69影院 | 欧美一区二区在线观看视频 | 亚欧在线| 看国产一级毛片 | 久久国语精品 | 久久99国产精品成人欧美 | 国产欧美日韩另类 | 日韩伦理亚洲欧美在线一区 | 日韩综合网 | 阿v精品一区二区三区 | 免费一区二区三区免费视频 | 韩国精品欧美一区二区三区 | 日韩一区二区三区四区不卡 | 国产精品国产亚洲精品看不卡 | 亚洲va欧美va天堂v国产综合 | 真人一级一级毛片免费观看 | 亚洲免费a| 护士精品一区二区三区 | 欧美 韩国 精品 另类 综合 | 欧美日韩综合精品一区二区三区 | 国产资源视频在线观看 | 亚洲精品乱码久久久久久 | 劲爆欧美精品13页 | 欧美日韩色 | 亚洲欧美日韩色 | 久色视频在线 | 亚洲国产精品免费在线观看 | 久久一区二区三区精品 | 国产精品久久久久久久专区 | 成a人片亚洲日本久久 | 3女bbbwww | 不卡国产视频 |