我从facebook获取相册名称并使用以下代码将其写在页面上。 问题是它还包括未定义的那些,所以它写了两个“Wall Photos”,那么如何防止它写出未定义的那些?
FB.api('/xxxxxxxxxxxxxxx/albums', function(response) {
if (response && response.data && response.data.length){
var ul = document.getElementById('fb-albumslist');
for (var i=0, l=response.data.length; i<l; i++) {
if (response.data !== "undefined"){
var
album = response.data[i],
li = document.createElement('li'),
a = document.createElement('a');
a.innerHTML = album.name;
a.href = album.link;
li.appendChild(a);
ul.appendChild(li);
}
}
}
});
在页面上写出:
Wall Photos
Wall Photos (this is undefined)
Cover Photos
Profile Picture
我正在尝试使用“if(response.data!==”undefined“){”但我不确定该怎么办? 感谢任何投入,谢谢!
答案 0 :(得分:1)
似乎Facebook正在制作另一张具有以下属性的Wall Photos专辑:
{
"id": "YYYY",
"from": {
"name": "AAAA",
"id": "XXX"
},
"name": "Wall Photos",
"privacy": "custom",
"type": "friends_walls",
"created_time": "2011-02-02T08:54:20+0000",
"updated_time": "2011-02-02T08:54:20+0000",
"can_upload": false
},
我不确定这张专辑的用途,但最好的办法是检查link
字段是否存在,否则跳过:
if(!album.link) continue;