Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/node.js/33.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 对象的返回值_Javascript_Node.js_Discord.js - Fatal编程技术网

Javascript 对象的返回值

Javascript 对象的返回值,javascript,node.js,discord.js,Javascript,Node.js,Discord.js,我正在尝试为我的discord.js bot创建一个积分系统(您可以通过命令验证是否完成了挑战,如果完成了,bot将给您积分)。我找不到方法来检查值是否正确。该命令如下所示: !验证 这是我的密码: const Discord=require('Discord.js'); 常数标志={ flag1:{value:'test',points:20}, flag2:{value:'test2',points:30}, }; module.exports.run=async(客户端,消息)=>{ 设

我正在尝试为我的discord.js bot创建一个积分系统(您可以通过命令验证是否完成了挑战,如果完成了,bot将给您积分)。我找不到方法来检查值是否正确。该命令如下所示:

!验证
这是我的密码:

const Discord=require('Discord.js');
常数标志={
flag1:{value:'test',points:20},
flag2:{value:'test2',points:30},
};
module.exports.run=async(客户端,消息)=>{
设args=message.content.slice(4.split)(“”);
var keys=Object.keys(标志);
key.forEach((key)=>{
if(key==args[2]){
var str=JSON.stringify(键);
var result=JSON.parse(str);
log(结果['value']);
}
});
};

问题是,
result['value']
总是返回
未定义的
,即使我知道标志名称和值是有效的。

您可以使用和检查值是否正确

const标志={
flag1:{value:'test',points:20},
flag2:{value:'test2',points:30},
};
module.exports.run=async(客户端,消息)=>{
//使用解构获得挑战和价值
let[cmd,challenge,value]=message.content.slice(4.split)(“”);
//查找两个名称都与给定名称匹配的条目
const result=Object.entries(flag.find)(
([flag,data])=>flag==challenge&data.value==value
);
//如果未找到任何内容,请提供错误
如果(!结果)
返回message.channel.send('不是有效的值和/或标志');
//用这些点做点什么
console.log(结果[1]。点数)
};

出了什么问题?您是否收到错误或意外输出?你的问题到底是什么?此外,挑战的名称是否应该是键名称,如
flag1
?或者它是value属性,比如
test1
。我没有定义,是的,挑战应该命名为flag1。值在value属性中,但您要根据值名称而不是质询名称检查命令,对吗?另外,为什么在生成args变量时要拆分4个字符?这不是
!验证
8个字符?命令为!验证,因为对于每个挑战,您的分数不同。我拆分了4个字符,因为真正的前缀是sudo,但我认为它会更容易理解!相反