JS JSON对象转为字符串的简单实现方法

来源:互联网 发布:windows10 sql server 编辑:程序博客网 时间:2024/05/20 20:04
由于ie6,7不支持JSON.stringify(json),  我们只好自己再写一个函数来替换这个方法. 代码如下:
 代码如下:

function JsonToStr(o) {
var arr = [];
var fmt = function(s) {
if (typeof s == 'object' && s != null) return JsonToStr(s);
return /^(string|number)$/.test(typeof s) ? "'" + s + "'" : s;
}
for (var i in o) arr.push("'" + i + "':" + fmt(o[i]));
return '{' + arr.join(',') + '}';
}

另外: 如果不想json中的数字也被字符串化.  可以改造:

return /^(string|number)$/.test(typeof s) ? '"' + s + '"' : s;

为 : return /^(string)$/.test(typeof s) ? '"' + s + '"' : s;

(其实就是把number类型的忽略掉而已)