2

我有需要将其转换为字符串的 javascript 对象。

var obj = {"name": "XXX", "age": "27"};

谷歌搜索后我得到了JSON.stringify(obj);

JSON.stringify(obj);如果 IE8 模式与以下相同,则工作正常

浏览器模式:IE8
文档模式:IE8 标准

并且相同的代码不起作用如果

浏览器模式:IE8
文档模式:Quirks 模式

我想知道为什么同样的事情不起作用......

任何想法将不胜感激。

4

1 回答 1

0

JSON.stringify如果您可以将 IE 模式固定为 IE8 和 IE8 标准,我建议您使用。JSON.stringify将序列化一个对象并且非常易于使用。大多数现代浏览器本机支持此方法,但对于那些不支持的,您可以包含JS 版本

如果您无法修复 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"}"
于 2014-01-16T21:12:06.177 回答