为什么.getJSON中的名称在声明为列表中的索引(JavaScript/JQuery)后仍然没有定义

为什么.getJSON中的名称在声明为列表中的索引(JavaScript/JQuery)后仍然没有定义,javascript,jquery,getjson,twitch,Javascript,Jquery,Getjson,Twitch,我正在使用.getJSON从TwitchAPI获取显示名称。当用户帐户被停用(422)或不存在(404)时,display_name键不存在并返回undefined。我试图通过使用列表中的名称(streamerList)作为var名称来解决这个问题 var streamerList = ["freecodecamp", "storbeck", "terakilobyte", "habathcx", "RobotCaleb", "thomasballinger", "noobs2ninjas",

我正在使用.getJSON从TwitchAPI获取显示名称。当用户帐户被停用(422)或不存在(404)时,display_name键不存在并返回undefined。我试图通过使用列表中的名称(streamerList)作为var名称来解决这个问题

var streamerList = ["freecodecamp", "storbeck", "terakilobyte", "habathcx", "RobotCaleb", "thomasballinger", "noobs2ninjas", "beohoff", "rocketbeanstv", "diehahn","myleschuahiock","brunofin","comster404"];


for (var x = 0; x < streamerList.length; x++) {
     var name = streamerList[x];
     $.getJSON("https://api.twitch.tv/kraken/channels/" + streamerList[x] + "/?callback=?", function (json) {
但不知怎的,它还是不起作用?有人能告诉我为什么会这样吗?(因为我还在起步)并提供解决方案

完整示例见:


JSLint还告诉我不要在for循环中执行函数。这可能是问题所在吗?

您正在将
显示\u名称
检查为空。您应该对照
未定义的
进行检查

这是零钱-

if (json.display_name !== undefined) {
    name = json.display_name;
}
$(文档).ready(函数(){
var streamerList=[“freecodecamp”、“storbeck”、“TB”、“habathcx”、“RobotCaleb”、“thomasballinger”、“Noobs2nijas”、“beohoff”、“rocketbeanstv”、“Diehan”、“myleschuahiock”、“brunofin”、“comster404”];
对于(var x=0;x”+status+”

“+game+”

“+views+”视图

“+followers+”followers

<; }); } });
@导入url(https://fonts.googleapis.com/css?family=Fira+单声道:400700);
身体{
背景色:#9b53d2;
保证金:0;
填充:0;
字体系列:“Fira Mono”,无衬线;
}
/*图像集1*/
.图像集{
位置:相对位置;
背景颜色:蓝色;
保证金:0自动;
宽度:1200px;
高度:1px;
}
.标志{
宽度:270px;
高度:93px;
位置:相对位置;
顶部:50px;
左:40%;
}
.装饰{
位置:绝对位置;
}
/*如果您希望img跟随水平屏幕滚动,则必须将其绝对设置为相对的div*/
/*如果您希望图像与水平屏幕溢出一起“行驶”,则需要此选项*/
维德先生{
宽度:110px;
高度:220px;
顶部:121px;
左:108px;
}
卡普康先生{
宽度:171像素;
z指数:-1;
高度:171像素;
顶部:185px;
左:215px;
}
小丑先生{
宽度:65px;
高度:90px;
顶部:230像素;
左:385px;
}
.超人{
宽度:108px;
高度:102px;
顶部:55px;
左:350px;
}
费特先生{
宽度:85px;
高度:116px;
顶部:210px;
左:470px;
}
蝙蝠侠罗宾先生{
宽度:220px;
高度:107px;
顶部:215px;
左:570px;
}
铁人先生{
宽度:88px;
高度:119px;
顶部:45px;
左:770px;
}
坎贝尔先生{
宽度:140px;
高度:180像素;
顶部:150px;
左:840px;
}
马里奥·佩奇先生{
宽度:256px;
高度:256px;
顶部:100px;
左:960px;
}
/*图像集2*/
.image-set-2{
位置:相对位置;
宽度:1200px;
/*高度:100px*/
裕度:-180px自动0自动;
}
戴西先生{
宽度:124px;
高度:196px;
顶部:110px;
右:-60px;
}
.汉堡{
宽度:165px;
高度:自动;
顶部:100px;
左:-60px;
}
.水印-1{
位置:绝对位置;
顶部:230像素;
左:40%;
颜色:白色;
文本对齐:居中;
}
.水印-2{
位置:绝对位置;
顶部:260px;
左:42%;
字体大小:12px;
颜色:白色;
文本对齐:居中;
}
/*抽动屏*/
.电视框架{
宽度:1200px;
高度:1000px;
背景色:#7a41a5;
保证金:300px自动0自动;
填充顶部:19px;
}
.横幅{
保证金:0自动;
宽度:1100px;
高度:55px;
背景色:#9b53d2;
盒影:0 5px 15px#222;
}
.横幅标签{
颜色:白色;
字母间距:10px;
文本对齐:居中;
垂直对齐:中间对齐;
填充顶部:10px;
}
.电视屏幕{
宽度:980px;
背景色:白色;
高度:840px;
保证金:0自动;
盒影:0 5px 15px#222;
溢出:滚动;
}
/*电视屏幕CSS中的拖缆*/
.拖缆{
宽度:99.6%;
高度:150像素;
边框:2个实心#7a41a5;
}
/*所有颜色样式*/
上校{
高度:120px;
浮动:左;
/*背景色:红色*/
}
/*COL-1样式*/
.col-1{
填充:0;
保证金:0;
/*背景色:红色*/
}
.个人资料徽标{
边界半径:100%;
宽度:85px;
高度:85px;
利润率:30px 0 100px;
}
.col-2{
宽度:270px;
左边距:50像素;
}
.显示名称{
填充顶部:20px;
字体大小:22px;
}
.地位{
字体大小:16px;
裕度:-10px0;
}
.col-2 a{
颜色:黑色;
文字装饰:无;
}
上校3{
高度:100px;
宽度:200px;
利润率:30像素0.20像素;
字体大小:14px;
}
上校-
if (json.display_name !== undefined) {
    name = json.display_name;
}