很多IE版本不支持使用json.parse将json字符串转换成对象,可以使用eval来解决。
示例:
以下示例使用 JSON.parse 将 JSON 字符串转换成对象。
var jsontext = ‘{“firstname”:”Jesper”,”surname”:”Aaberg”,”phone”:[“555-0100″,”555-0120″]}';
var contact = JSON.parse(jsontext);
将上面示例中的代码:
var jsontext = ‘{“firstname”:”Jesper”,”surname”:”Aaberg”,”phone”:[“555-0100″,”555-0120″]}';
var contact = JSON.parse(jsontext);
替换为:
var contact = eval(“[” + jsontext + “]”)[0];
或者
var contact = eval(“(” + jsontext + “)”);
json.parse IE浏览器支持:
json.parse在以下文档模式中受到支持:Internet Explorer 8 标准模式、Internet Explorer 9 标准模式、Internet Explorer 10 标准模式、Internet Explorer 11 标准模式。此外,也在应用商店应用(Windows 8 和 Windows Phone 8.1)中受支持。
json.parse在以下文档模式中不受支持:Quirks、Internet Explorer 6 标准模式、Internet Explorer 7 标准模式。