【发布时间】:2019-08-27 13:55:58
【问题描述】:
当我在 twitch 上在线流式传输时,我试图从 JSON 中获取一个值。问题是当我不在线时,我收到一个错误Uncaught TypeError,因为当我在线/离线时 JSON 会发生变化。返回值发生变化时如何处理?
$.ajax({
headers: {
'Client-ID' : 'xxx'
},
url: api_url + "?user_id=" + target,
contentType: "application/json",
dataType: 'json',
success: function(result){
console.log(result);
document.getElementById("second").innerHTML = result.data[0].id;
}
当我在线时,这非常有效。但是当我离线时
result.data[0].id 不存在并给我:
未捕获的类型错误:无法读取未定义的属性“id”。
我希望我能理解自己,我已经在网上和 StackOverflow 上搜索了很多年的答案。
【问题讨论】:
-
为什么不在分配支票
if(result.data && result.data.length)之前添加支票?? -
“成功”之前还是之后?我尝试使用 if(result.data[0].id == 0) 但这给了我一个错误
-
应该在成功内
if(result.data && result.data.length) document.getElementById("second").innerHTML = result.data[0].id -
谢谢杰迪普。简单有效。工作完美。感谢您帮助像我这样的初学者。
标签: javascript arrays json ajax