Javascript 循环不';即使有候选人存在也找不到候选人?
我最近开始开发一个discord机器人(使用discord.js库)。机器人的目的是在一款名为ROBLOX的游戏中找到小型服务器 我已经学习了ROBLOX api,并编写了大部分代码。 当我键入命令时,循环会在所有服务器上运行,但令我惊讶的是,它没有找到合适的候选服务器 这是我代码的一部分:Javascript 循环不';即使有候选人存在也找不到候选人?,javascript,discord.js,Javascript,Discord.js,我最近开始开发一个discord机器人(使用discord.js库)。机器人的目的是在一款名为ROBLOX的游戏中找到小型服务器 我已经学习了ROBLOX api,并编写了大部分代码。 当我键入命令时,循环会在所有服务器上运行,但令我惊讶的是,它没有找到合适的候选服务器 这是我代码的一部分: result = api.responseText found = false number = parseInt(args[0]) for
result = api.responseText
found = false
number = parseInt(args[0])
for (var i = 0; i < result.length; i++){
if(result[i].playing <= number) {
message.reply("found candidate")
found = true
} else {
if (i == result.length - 1) {
message.reply("no candidate found.")
}
}
}
result=api.responseText
发现=错误
number=parseInt(参数[0])
对于(变量i=0;i
const filter = result.filter( (item) => item.playing <= number)
const found = filter.lenght > 0
const filter=result.filter((项)=>item.0
有两个主要问题:
.responseText
可能是一个JSON编码的字符串,而不是一个对象。这需要解析为一个对象
result.data
是包含服务器数据的数组(特定于Roblox Web API),而不是result
。有三个地方需要更新
这些问题可以这样解决:
result = JSON.parse(api.responseText)
found = false
number = parseInt(args[0])
for (var i = 0; i < result.data.length; i++){
if(result.data[i].playing <= number) {
message.reply("found candidate")
found = true
} else {
if (i == result.data.length - 1) {
message.reply("no candidate found.")
}
}
}
result=JSON.parse(api.responseText)
发现=错误
number=parseInt(参数[0])
对于(var i=0;i 如果(result.data[i]。播放哦,糟了!看起来图像没有加载。我将链接API本身。播放是否有可能是字符串?您是否也尝试过解析它?不,我没有,但我会尝试。数字的值是多少?这不起作用,尽管我可能误解了您,这是您的意思吗?对于(var i=0;i