javascript - 如果找不到 .media$thumbnail.url 如何解决?
问题描述
我正在为博主构建一个小部件
<script type="text/javascript">
function mycallback(json) {
for (var i = 0; i < json.feed.entry.length; i++) {
for (var j = 0; j < json.feed.entry[i].link.length; j++) {
if (json.feed.entry[i].link[j].rel == 'alternate') {
var postUrl = json.feed.entry[i].link[j].href;
break;
}
}
var postTitle = json.feed.entry[i].title.$t;
var postSummary = json.feed.entry[i].summary.$t;
var Thumb = json.feed.entry[i].media$thumbnail.url;
var item = '<div class="wrapper"><img src='+ Thumb +' /><h3><a href=' + postUrl + '>' + postTitle + '</h3></a><p>' + postSummary + '</p></div>';
document.write(item);
}
}
</script>
<script src="https://smag-soratemplates.blogspot.com/feeds/posts/summary?max-results=5&alt=json-in-script&callback=mycallback"></script>
但如果帖子中没有图像或找不到.media$thumbnail.url
小部件停止工作,有人知道如何解决吗?或显示替代图像?对不起,我是初学者
解决方案
您需要像这样在 Thumb 定义中使用 or(||)
var Thumb = json.feed.entry[i].media$thumbnail.url || 'https://i.imgur.com/5WMAvAu.gif';
在这里,如果json.feed.entry[i].media$thumbnail.url
是 undefine/false/null,Thumb 设置为“https://i.imgur.com/5WMAvAu.gif”作为您的默认图像。
推荐阅读
- reactjs - react 和 redux es2015 模块按原样使用
- c++ - 如何从模板类传递函数
- hyperledger-fabric - Hyperledger 注册错误(节点enrollAdmin.js):SyntaxError: Unexpected token
- ios - 通过用户拖动调整饼图段的大小
- robotframework - robotsframework - 获取传递给执行的所有变量/参数
- mysql - 不能 DROP TABLE 未知表(错误 1051)
- c# - C# 通用接口。类型 T 必须可转换为 T2 才能将其用作泛型接口中的参数
- javascript - 图像在全宽上扩展了链接触发范围
- google-apps-script - 通过 Apps 脚本从 Google Doc 模板创建的 PDF 具有旧值
- erlang - Erlang进程信息中的重复二进制文件