Native JSON.parse似乎在FF(使用中的版本13.0.1)中执行效果不佳,我在IE,Chrome和FF中尝试了以下测试代码。前2个浏览器似乎正确地将json字符串解析为Object而FF则没有。
var jsonObj = {
onetype: [
{id:1,name:"First Name"},
{id:2,name:"Second Name"}
]
};
var serializedJsonObj = JSON.parse(JSON.stringify(jsonObj));
serializedJsonObj.onetype[1].name;
我假设必须将“Second Name”打印到输出,但是不是这个FF只打印'undefined',因为obj.onetype属性实际上是一个字符串,要将它解析为一个对象,我们必须再次调用它上面的JSON.parse :
var jsonObj = {
onetype: [
{id:1,name:"First Name"},
{id:2,name:"Second Name"}
]
};
var serializedJsonObj = JSON.parse(JSON.stringify(jsonObj));
JSON.parse(serializedJsonObj.onetype)[1].name;
我错过了什么吗?
答案 0 :(得分:0)
这是lib.js中包含的过时的Prototype.js库(谁会这样做?)。在阅读了2条评论后声称我的情况下这种行为无效我创建了一个测试页面,其中包含我遇到问题以测试它的真实案例,但它不再具有可再现性。