在javascript中为键解析Json时包含反斜杠
我试图在jQuery中解析以下freebase API 但当我尝试访问图像的“mId”时,遇到了一个问题 任何人都可以告诉我,访问包含在javascript中为键解析Json时包含反斜杠,javascript,jquery,json,Javascript,Jquery,Json,我试图在jQuery中解析以下freebase API 但当我尝试访问图像的“mId”时,遇到了一个问题 任何人都可以告诉我,访问包含“/common/topic/image”这些类型键的对象或数组的正确方法是什么 谢谢 如果对象键包含点或斜线,则可以通过以下方式访问它: var o = { 'some.key': 123, 'another/key': 321 }; console.log(o['some.key'], o['another/key']); 看 从你的评论来看 如果检
“/common/topic/image”
这些类型键的对象或数组的正确方法是什么
谢谢 如果对象键包含点或斜线,则可以通过以下方式访问它:
var o = {
'some.key': 123,
'another/key': 321
};
console.log(o['some.key'], o['another/key']);
看
从你的评论来看
如果检查json
,则最后一个结果
没有名为/common/topic/image
的数组
因此,当它尝试迭代时,它失败了[无法获得长度]
因此,只需向它添加一个条件,如if(arr['/common/topic/image']{…}
。现在,如果它有空元素,它将被跳过
检查这把小提琴Thanx Praveen Jeganathan.@ARV我很高兴能帮上忙,我的朋友。你好Praveen Jeganathan我收到一个错误,“未捕获的类型错误:无法读取未定义的属性'length',单位为$。每个(arr['/common/topic/image'],函数(索引,图像){}@ARV如果您检查json中的最后一个结果,则没有名为
/common/topic/image
的数组。因此,当它尝试迭代时,它失败了。因此,只需向它添加一个类似“if(arr['/common/topic/image']){…}的条件即可`。现在它有空元素,将被跳过。现在检查此小提琴。希望您理解。thanx Praveen Jeganathan。现在它工作正常。Thancx供您指导。
$.getJSON("https://www.googleapis.com/freebase/v1/search?query=us%20president&filter=(all%20type:/people/person)&output=(/common/topic/image)", function (data) {
var r = data.result;
// iterate each result
$.each(r, function (i, j) {
var arr = j.output['/common/topic/image'];
//iterate each arr['/common/topic/image']
$.each(arr['/common/topic/image'], function (k, l) {
console.log(l);
});
});
});