js的话 var array = eval(json),然后将array循环,就可以得到一个数组
通常都是用eval()函数来进行转换的,例如:varsjson
=
'{a:
1}'var
o
=
eval('('
+
sjson
+
')')alert(o.a)如果是数组的话,也是类似的,在字符串两边各加上一个小括号,然后用eval()函数将其转换为数组,再赋值给某个变量,就可以直接使用了。
1 <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.0 Transitional//EN">2 <HTML>
3 <HEAD>
4 <TITLE>New Document </TITLE>
5
6 <SCRIPT LANGUAGE="JavaScript">
7
8 var t="{'firstName': 'cyra', 'lastName': 'richardson', 'address': { 'streetAddress': '1 Microsoft way', 'city': 'Redmond', 'state': 'WA', 'postalCode': 98052 },'phoneNumbers': [ '425-777-7777','206-777-7777' ] }"
9var jsonobj=eval('('+t+')')
10alert(jsonobj.firstName)
11alert(jsonobj.lastName)
12
13 var t2="[{name:'zhangsan',age:'24'},{name:'lisi',age:'30'},{name:'wangwu',age:'16'},{name:'tianqi',age:'7'}] "
14var myobj=eval(t2)
15for(var i=0i<myobj.lengthi++){
16alert(myobj[i].name)
17alert(myobj[i].age)
18 }
19
20 var t3="[['<a href=# onclick=openLink(14113295100,社旗县国税局桥头税务所,14113295100,d6d223892dc94f5bb501d4408a68333d,swjg_dm)>14113295100</a>','社旗县国税局桥头税务所','社旗县城郊乡长江路西段']]"
21 //通过eval() 函数可以将JSON字符串转化为对象
22 var obj = eval(t3)
23 for(var i=0i<obj.lengthi++){
24for(var j=0j<obj[i].lengthj++){
25 alert(obj[i][j])
26}
27 }
28
29
30 /*
31 //stringifier 函数的作用跟 parse 相反, 用来将一个js对象转换为 JSON 文本。
32 var jsonText = JSON.stringify(obj)
33 alert(jsonText)
34 //如果基于安全的考虑的话,最好是使用一个 JSON 解析器。 一个 JSON 解析器将只接受 JSON 文本。所以是更安全的。
35 var myObject = JSON.parse(myJSONtext, filter)
36 //可选的 filter 参数将遍历每一个value key 值对, 并进行相关的处理。如:
37 //如
38 myData = JSON.parse(text, function (key, value) {
39 return key.indexOf('date') >= 0 ? new Date(value) : value })
40
41 //stringifier 函数的作用跟 parse 相反, 用来将一个js对象转换为 JSON 文本。
42 var myJSONText = JSON.stringifier(myObject)
43 */
44
45 </SCRIPT>
46 </HEAD>
47 <BODY>
48 </BODY>
49 </HTML>