我有javascript对象,我需要将其转换为字符串。
var obj = {"name": "XXX", "age": "27"};
谷歌搜索后我得到JSON.stringify(obj);
JSON.stringify(obj);
正常工作
浏览器模式:IE8
文档模式:IE8标准
并且相同的代码无效
浏览器模式:IE8
文档模式:怪癖模式
我想知道为什么同样的事情不起作用......
任何想法都将受到赞赏。
答案 0 :(得分:0)
如果您可以将IE模式修复为IE8和IE8标准,我建议使用JSON.stringify
。 JSON.stringify
将序列化一个对象并且非常易于使用。大多数现代浏览器本身都支持此方法,但对于那些不支持此方法的浏览器,您可以包含JS version
并且如果您无法修复IE模式,请使用以下方法将对象转换为字符串。
<强>功能:强>
function objToString (obj) {
var tabjson=[];
for (var p in obj) {
if (obj.hasOwnProperty(p)) {
tabjson.push('"'+p +'"'+ ':' + '"' +obj[p] + '"');
}
} tabjson.push()
return '{'+tabjson.join(',')+'}';
}
调用函数:
var obj = {"name": "XXX", "age": "27"};
objToString(obj );
<强>输出:强>
"{"name":"XXX","age":"27"}"