Javascript Facebook对象的一部分显示为未定义,但它不是';t未定义
我正在处理Facebook Javascript SDK的结果,而对象的“附件”部分给我带来了麻烦。当看到这个对象时,一切都很好,但是当我试图在我的网站上显示它时,它说这些属性是未定义的。我解析错误了吗 这是目标:Javascript Facebook对象的一部分显示为未定义,但它不是';t未定义,javascript,object,facebook-javascript-sdk,facebook-graph-api-v2.0,Javascript,Object,Facebook Javascript Sdk,Facebook Graph Api V2.0,我正在处理Facebook Javascript SDK的结果,而对象的“附件”部分给我带来了麻烦。当看到这个对象时,一切都很好,但是当我试图在我的网站上显示它时,它说这些属性是未定义的。我解析错误了吗 这是目标: { "id":"xxx_xxx", "from":{ "id":"xxxx", "name":"User Name" }, "to":{ "data":[{ "name":"Group Name", "id":"xxxx"
{
"id":"xxx_xxx",
"from":{
"id":"xxxx",
"name":"User Name"
},
"to":{
"data":[{
"name":"Group Name",
"id":"xxxx"
}]
},
"picture":"url of image",
"link":"url",
"object_id":"Object ID",
"type":"photo",
"created_time":"2014-10-15T21:09:19+0000",
"updated_time":"2014-10-15T21:09:19+0000",
"attachments":{
"data":[{
"media":{
"image":{
"height":551,
"src":"Image Source",
"width":720
}
},
"target":{
"id":"742450405803347",
"url":"target URL"
},
"type":"photo",
"url":"URL"
}]
}
以下是在网站上显示“附件”部分的代码(我知道这很混乱,请忽略):
post\u div\u html+='--------------\
媒体映像源:'+feed.attachments.data[0]+'\
目标URL:'+feed.attachments.data[1]+'\
类型:'+feed.attachments.data[2]+'\
URL:“+feed.attachments.data[3]+”;
现在,需要明确的是,您看到的结果是“未定义”在我的网站上显示为值。我尝试的所有其他方法都导致了一个错误,即“feed.attachments.data.whatever is undefined”
有人知道我需要如何展示这些东西吗?我想你想要的是
var att = feed.attachments.data[0],
mediaImageSrc = att.media.image.src,
targetUrl = att.target.url,
type = att.type,
url = att.url;
我希望这是有道理的
这里有一个有效的例子
var提要={
“id”:“xxx\U xxx”,
“发件人”:{
“id”:“xxxx”,
“名称”:“用户名”
},
“致”:{
“数据”:[{
“名称”:“组名称”,
“id”:“xxxx”
}]
},
“图片”:“图片的url”,
“链接”:“url”,
“对象id”:“对象id”,
“类型”:“照片”,
“创建时间”:“2014-10-15T21:09:19+0000”,
“更新时间”:“2014-10-15T21:09:19+0000”,
“附件”:{
“数据”:[{
“媒体”:{
“图像”:{
“高度”:551,
“src”:“图像源”,
“宽度”:720
}
},
“目标”:{
“id”:“742450405803347”,
“url”:“目标url”
},
“类型”:“照片”,
“url”:“url”
}]
}
};
var att=feed.attachments.data[0],
mediaImageSrc=att.media.image.src,
targetUrl=att.target.url,
类型=附件类型,
url=att.url;
post_div_html='-----------------\
媒体图像源:'+mediaImageSrc+'\
目标URL:“+targetUrl+”\
类型:'+Type+'\
URL:“+URL+””;
document.getElementById('out').innerHTML=post\u div\u html代码>
首先,虽然feed.attachments.data
实际上是一个数组,但它只有一个元素,因此不能使用高于0的索引。其他任何东西(比如代码中的1、2和3)都是未定义的
var att = feed.attachments.data[0],
mediaImageSrc = att.media.image.src,
targetUrl = att.target.url,
type = att.type,
url = att.url;