JS对象序列化成json数据:
[代码] [JS]代码
01 | function Serialize(obj){ |
02 | switch (obj.constructor){ |
03 | case Object: |
04 | var str = "{" ; |
05 | for ( var o in obj){ |
06 | str += o + ":" + Serialize(obj[o]) + "," ; |
07 | } |
08 | if (str. substr (str.length-1) == "," ) |
09 | str = str. substr (0,str.length -1); |
10 | return str + "}" ; |
11 | break ; |
12 | case Array: |
13 | var str = "[" ; |
14 | for ( var o in obj){ |
15 | str += Serialize(obj[o]) + "," ; |
16 | } |
17 | if (str. substr (str.length-1) == "," ) |
18 | str = str. substr (0,str.length -1); |
19 | return str + "]" ; |
20 | break ; |
21 | case Boolean: |
22 | return "\"" + obj.toString() + "\"" ; |
23 | break ; |
24 | case Date : |
25 | return "\"" + obj.toString() + "\"" ; |
26 | break ; |
27 | case Function: |
28 | break ; |
29 | case Number: |
30 | return "\"" + obj.toString() + "\"" ; |
31 | break ; |
32 | case String: |
33 | return "\"" + obj.toString() + "\"" ; |
34 | break ; |
35 | } |
36 | } |
37 | var staff_list_obj ={}; |
38 | var staff_id = 1001; |
39 | staff_list_obj[staff_id] = {}; |
40 | staff_list_obj[staff_id][ "姓名" ] = '111' ; |
41 | staff_list_obj[staff_id][ "测试" ] = '222' ; |
42 | alert(Serialize(staff_list_obj)); |
json数据转化为JS对象:
var jsonString={....}/[....];
eval("var obj="+jsonString);
alert(obj);
写道
function evalJSON(json){
var obj = null;
try {
obj = eval("(" + json + ")");
} catch(E){}
return obj ;
}
var obj = null;
try {
obj = eval("(" + json + ")");
} catch(E){}
return obj ;
}