国产探花免费观看_亚洲丰满少妇自慰呻吟_97日韩有码在线_资源在线日韩欧美_一区二区精品毛片,辰东完美世界有声小说,欢乐颂第一季,yy玄幻小说排行榜完本

首頁 > 開發 > JS > 正文

JSON字符串和JSON對象相互轉化實例詳解

2024-05-06 16:34:22
字體:
來源:轉載
供稿:網友

本文實例講述了JSON字符串和JSON對象相互轉化的方法。分享給大家供大家參考,具體如下:

將json字符串轉換為json對象的方法。在數據傳輸過程中,json是以文本,即字符串的形式傳遞的,而JS操作的是JSON對象,所以,JSON對象和JSON字符串之間的相互轉換是關鍵

例如:

JSON字符串:

var str = '{ "name": "name1","sex": "m" }';

JSON對象:

var obj = { "name": "name1", "sex": "w" };

一、JSON字符串轉換為JSON對象

要使用上面的str1,必須使用下面的方法先轉化為JSON對象:

var obj = eval('(' + str + ')'); //由JSON字符串轉換為JSON對象,必須把文本包圍在括號中,這樣才能避免語法錯誤: "(" + str+ ")"

或者

var obj = $.parseJSON(str);// 將JSON字符串轉化為JSON對象 (jQuery)

或者

var obj= str.parseJSON();//由JSON字符串轉換為JSON對象

或者

var obj= JSON.parse(str);//由JSON字符串轉換為JSON對象

然后,就可以這樣讀取:

Alert(obj.name);Alert(obj.sex);

特別注意:如果obj本來就是一個JSON對象,那么使用eval()函數轉換后(哪怕是多次轉換)還是JSON對象,但是使用parseJSON()函數處理后會有問題(拋出語法異常)。

二、可以使用toJSONString()或者全局方法JSON.stringify()將JSON對象轉化為JSON字符串。

例如:

var str=obj.toJSONString();//將JSON對象轉化為JSON字符

或者

var str=JSON.stringify(obj);//將JSON對象轉化為JSON字符alert(str);

總結:

上面我們也看到了在進行類型轉化的時候總的來說有兩種,一種是JavaScript自帶的解析器,而另一種就是JSON解析器,其中javascript解析器可以編譯執行任何的javascript代碼所以這里隱藏了一個潛在的安全問題而JSON解析器只能識別JSON文本,而不會編譯腳本所以比較安全,而且JSON解析器的速度更快。

上面的幾個方法中,除了eval()函數是js自帶的之外,其他的幾個方法都來自json.js包。新版本的JSON 修改了 API,將 JSON.stringify() 和 JSON.parse() 兩個方法都注入到了 Javascript的內建對象里面,前者變成了 Object.toJSONString(),而后者變成了String.parseJSON()。如果提示找不到toJSONString()和parseJSON()方法,則說明您的json包版本太低。

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


注:相關教程知識閱讀請移步到JavaScript/Ajax教程頻道。
發表評論 共有條評論
用戶名: 密碼:
驗證碼: 匿名發表
主站蜘蛛池模板: 兴和县| 武胜县| 石泉县| 天镇县| 长治市| 崇州市| 惠水县| 祁阳县| 巩义市| 常山县| 长沙县| 屏边| 日土县| 许昌市| 华宁县| 长岭县| 南充市| 葵青区| 茶陵县| 桂东县| 扎囊县| 青龙| 乌恰县| 温泉县| 博爱县| 芦溪县| 黑龙江省| 岳西县| 正蓝旗| 松潘县| 莒南县| 巴彦淖尔市| 巴彦县| 孝昌县| 鄂托克旗| 栾城县| 五原县| 石景山区| 桃江县| 长乐市| 辽阳县|