javascript技巧

关注公众号 jb51net

关闭
首页 > 网络编程 > JavaScript > javascript技巧 > js json转string

JavaScript中json对象和string对象之间相互转化

作者:

json对象和string对象之间的转化已经成为了大家耳熟能详的话题,本人今天就多啰嗦一些他们之间的故事,如有不对之处,还请各位海涵呢?不多说了直切主题
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对象的方法
复制代码 代码如下:

/**
* json对象转字符串形式
*/
function json2str(o) {
var arr = [];
var fmt = function(s) {
if (typeof s == 'object' && s != null) return json2str(s);
return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s;
}
for (var i in o) arr.push("'" + i + "':" + fmt(o[i]));
return '{' + arr.join(',') + '}';
}

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>
您可能感兴趣的文章:
阅读全文