J2EE社区

苟有恒,何必三更起五更眠;
最无益,只怕一日曝十日寒.
posts - 241, comments - 318, trackbacks - 0, articles - 16

JavaScript中json对象和string对象之间的转化

Posted on 2011-06-26 20:27 xcp 阅读(24151) 评论(0)  编辑  收藏 所属分类: Javascript

json对象
var json = {aa:true,bb:true};
var json1 = {aa:'b',bb:{cc:true,dd:true}};
1:js操作json对象
   for(var item in json){
       alert(item);           //结果是 aa,bb, 类型是 string
       alert(typeof(item));
       alert(eval("json."+item));   //结果是true,true类型是boolean
       eval(("json."+item+"=false;"));   //改变json对象的值
   }

2:json对象转化为String对象的方法
1        /**
2          * json对象转字符串形式
3         */
4         function json2str(o) {
5             var arr = [];
6             var fmt = function(s) {
7                 if (typeof s == 'object' && s != null) return json2str(s);
8                 return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s;
9              }
10             for (var i in o) arr.push("'" + i + "':" + fmt(o[i]));
11             return '{' + arr.join(',') + '}';
12          }
3:string对象转化为json对象
function stringToJson(stringValue)
{
   eval("var theJsonValue = "+stringValue);
   return theJsonValue;
}

4:json数组转化为 String对象的方法(要掉要上面那个方法)
function JsonArrayToStringCfz(jsonArray)

   var JsonArrayString = "[";
   for(var i=0;i<jsonArray.length;i++){
   JsonArrayString=JsonArrayString+JsonToStringCfz(jsonArray[i])+",";
   }
   JsonArrayString = JsonArrayString.substring(0,JsonArrayString.length-1)+"]";
   return JsonArrayString;
}
5 利用json.js json转string

<script src="json2.js"></script>
<script>
var date = {myArr : ["a" , "b" , "c" , "d"] , count : 4};
var str = JSON.stringify(date);
alert(str);
</script>




名称: ♪4C.ESL | .↗Evon
口号: 遇到新问题♪先要寻找一个方案乄而不是创造一个方案こ
mail: 联系我