JavaScript-将对象转换为字符串(已停止工作)

JavaScript-将对象转换为字符串(已停止工作),javascript,json,internet-explorer-8,ie8-browser-mode,Javascript,Json,Internet Explorer 8,Ie8 Browser Mode,我有javascript对象,我需要将其转换为字符串 var obj = {"name": "XXX", "age": "27"}; 谷歌搜索之后,我得到了JSON.stringify(obj) JSON.stringify(obj)工作正常 浏览器模式:IE8 文档模式:IE8标准 如果发生以下情况,则相同的代码不起作用 浏览器模式:IE8 文档模式:怪癖模式 我想知道为什么同样的事情不起作用 如果您能将IE模式固定到IE8和IE8标准,我建议您使用JSON.stringifyJSON.st

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

var obj = {"name": "XXX", "age": "27"};
谷歌搜索之后,我得到了
JSON.stringify(obj)

JSON.stringify(obj)工作正常

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

如果发生以下情况,则相同的代码不起作用

浏览器模式:IE8
文档模式:怪癖模式

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


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

若你们不能修复你们的IE模式,那个么使用下面的方法将对象转换成字符串

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

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"}"
调用函数:

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"}"
输出:

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"}"

很多东西在旧版本的Internet Explorer中不起作用。这是其中之一。不要创建怪癖模式页面。@尖刻,但为什么这不能在怪癖模式下工作。。。我想了解的是,这是因为IE8已经过时了,微软就是这么做的。如果你想知道原因,你可以问他们。当IE进入怪癖模式时,它开始使用旧代码,并且它不支持JSON对象。您不应该创建新的怪癖模式页面。@实际上,我现有的应用程序默认在怪癖模式下打开。。。我正在尝试使用javascript获取数据。然后在应用程序中放入适当的