JS中 怎么将json对象转化成字符串

我现在有个 json =[{id:1} ,{id:2}] 怎么转成字符串 “[{id:1} ,{id:2}] ”

Obj2str: function(o) {
if (o == undefined) {
return "";
}
var r = [];
if (typeof o == "string") return "\"" + o.replace(/([\"\\])/g, "\\$1").replace(/(\n)/g, "\\n").replace(/(\r)/g, "\\r").replace(/(\t)/g, "\\t") + "\"";
if (typeof o == "object") {
if (!o.sort) {
for (var i in o)
r.push("\"" + i + "\":" + fn.Obj2str(o[i]));
if (!!document.all && !/^\n?function\s*toString\(\)\s*\{\n?\s*\[native code\]\n?\s*\}\n?\s*$/.test(o.toString)) {
r.push("toString:" + o.toString.toString());
}
r = "{" + r.join() + "}"
} else {
for (var i = 0; i < o.length; i++)
r.push(fn.Obj2str(o[i]))
r = "[" + r.join() + "]";
}
return r;
}
return o.toString().replace(/\"\:/g, '":""');
}
温馨提示:答案为网友推荐,仅供参考
第1个回答  2011-08-27
ie8以前的浏览器要自己写代码手工转。
text="["+
"{id:“+json[0]+"}"
"{id:“+json[1]+"}"+
"]";
类似以上写成循环即可。
或者用json-js这样的库

ie>8以后和ff>3.5以都可以用浏览器预置对象
JSON.stringify方法直接转换
第2个回答  2011-08-27
去网上找找Json2.js,比较好用。
第3个回答  2011-08-27
json.toString();追问

错,打错特错