導航:首頁 > 編程語言 > jsjson解析成數組對象數組對象

jsjson解析成數組對象數組對象

發布時間:2024-11-26 02:33:42

js解析json數據並將json字元串轉化為數組的實現方法

在JavaScript中,解析JSON數據並將其轉化為數組的操作非常直觀,主要藉助於`eval()`函數。例如,對於一個包含嵌套對象和數組的JSON字元串`t`,我們可以通過以下步驟進行處理:

這段代碼首先定義了一個包含復雜結構的JSON字元串,然後使用`eval()`函數將其轉化為JavaScript對象。接著,通過循環遍歷數組,我們可以訪問和操作其中的每個元素。值得注意的是,`eval()`函數在處理JSON時可能存在安全風險,推薦使用專門的JSON解析器進行處理,以避免惡意代碼執行。

㈡ js怎麼把json字元串轉換成對象數組

第一種
JSON.parse(jsonString)

第二種
eval("("+jsonString+")")

第三種
var obj=(function ToJSON(o){
if(typeof(o)=="string")try{return new Function("return "+o)();}catch(e){return null;}
})("[{name:'zhangsan',age:'24'},{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}]");
for(var b in obj)alert(obj[b].name);

㈢ JS中如何把JSON格式的字元串轉化為一個對象或數組呢

通常都是用eval()函數來進行轉換的,例如:var
sJson
=
'{a:
1}';var
o
=
eval('('
+
sJson
+
')');alert(o.a);如果是數組的話,也是類似的,在字元串兩邊專各加上一個小屬括弧,然後用eval()函數將其轉換為數組,再賦值給某個變數,就可以直接使用了。

㈣ 前台js 取json 對象數組數據

1、先定義一個json變數。

㈤ js將字元串轉換成對象和數組

可以這樣轉換(兼容性較好的做法):

varmsg='{A:[{name:"阿克蘇",spell:"akesu"}]}';//字元串類型的JSON數據
varjson=null;
try{
json=(newFunction('return'+msg))();
}catch(e){
//如果JSON數據格式有錯誤,進行錯誤處理
console.log('數據錯誤');
}


---------


利用現代瀏覽器的特性的另一種做法是:

varmsg='{A:[{name:"阿克蘇",spell:"akesu"}]}';//字元串類型的JSON數據
varjson=JSON.parse(msg);//直接利用JSON對象進行解析

缺點就是某些瀏覽器不一定支持



---------


反過來,如果要將對象轉換成字元串,可以這樣做,見下面代碼(適用於現代瀏覽器,幾十年前的IE6什麼的運行不起來):

varjsons={A:[{name:"阿克蘇",spell:"akesu"}]};//JS對象
varstr=JSON.stringify(jsons);//轉化對象為字元串
console.log(str);//測試-輸出字元串

㈥ JS解析json數據(怎麼將json字元串轉化為數組)

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">
<HTML>
<HEAD>
<TITLE> New Document </TITLE>
<SCRIPT LANGUAGE="JavaScript">
var t="{'firstName': 'cyra', 'lastName': 'richardson', 'address': { 'streetAddress': '1 Microsoft way', 'city': 'Redmond', 'state': 'WA', 'postalCode': 98052 },'phoneNumbers': [ '425-777-7777','206-777-7777' ] }";
var jsonobj=eval('('+t+')');
alert(jsonobj.firstName);
alert(jsonobj.lastName);
var t2="[{name:'zhangsan',age:'24'},{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}] ";
var myobj=eval(t2);
for(var i=0;i<myobj.length;i++){
alert(myobj[i].name);
alert(myobj[i].age);
}
var t3="[['<a href=# onclick=openLink(14113295100,社旗縣國稅局橋頭稅務所,14113295100,,swjg_dm);>14113295100</a>','社旗縣國稅局橋頭稅務所','社旗縣城郊鄉長江路西段']]";
//通過eval() 函數可以將JSON字元串轉化為對象
var obj = eval(t3);
for(var i=0;i<obj.length;i++){
for(var j=0;j<obj[i].length;j++){
alert(obj[i][j]);
}
}
/*
//stringifier 函數的作用跟 parse 相反, 用來將一個js對象轉換為 JSON 文本。
var jsonText = JSON.stringify(obj);
alert(jsonText);
//如果基於安全的考慮的話,最好是使用一個 JSON 解析器。 一個 JSON 解析器將只接受 JSON 文本。所以是更安全的。
var myObject = JSON.parse(myJSONtext, filter);
//可選的 filter 參數將遍歷每一個value key 值對, 並進行相關的處理。如:
//如
myData = JSON.parse(text, function (key, value) {
return key.indexOf('date') >= 0 ? new Date(value) : value; });
//stringifier 函數的作用跟 parse 相反, 用來將一個js對象轉換為 JSON 文本。
var myJSONText = JSON.stringifier(myObject);
*/
</SCRIPT>
</HEAD>
<BODY>
</BODY>
</HTML>

閱讀全文

與jsjson解析成數組對象數組對象相關的資料

熱點內容
linuxoracle日誌 瀏覽:54
計算機網路課程作用 瀏覽:902
win10下ftp伺服器搭建 瀏覽:150
oppo原配數據線多少錢 瀏覽:835
找不到重生細胞文件夾 瀏覽:951
文件夾糊盒機 瀏覽:262
雲數據產業園有哪些 瀏覽:48
微信群里有我但收不到 瀏覽:915
js點擊圖片放大效果 瀏覽:839
蘋果6和se哪個值得買 瀏覽:943
哪些app可以查詢抖音帶貨 瀏覽:680
cad怎麼把pdf轉成一個文件 瀏覽:826
word輕松工具箱 瀏覽:850
能查葯品真假的app 瀏覽:197
c提取文件內容 瀏覽:989
百度網盤隱藏文件沒了 瀏覽:369
戴爾電腦官方網站網址是多少 瀏覽:230
infinitytask教程 瀏覽:759
股票用的網站有哪些 瀏覽:649
手機如何建立文件夾粘貼文字 瀏覽:90

友情鏈接