Javascript TypeError:无法读取属性';包括';未定义的类型:在discord.js中使用命令数组
制作一个discord机器人可能会被标记为重复,但我找不到任何东西可以解决这类问题 使用此代码:Javascript TypeError:无法读取属性';包括';未定义的类型:在discord.js中使用命令数组,javascript,discord.js,Javascript,Discord.js,制作一个discord机器人可能会被标记为重复,但我找不到任何东西可以解决这类问题 使用此代码: client.on('message', message => { if (!message.content.startsWith(prefix) || message.author.bot) return; var args = message.content.slice(prefix.length).split(' '); const command = args.
client.on('message', message => {
if (!message.content.startsWith(prefix) || message.author.bot) return;
var args = message.content.slice(prefix.length).split(' ');
const command = args.shift().toLowerCase();
if(command === 'reactpoll' || command === 'rpoll' || command === 'reactionpoll') {
if (!args.length) {
return message.channel.send(`You didn't provide any arguments, ${message.author}! Use &rpoll (title) (Main Body)`);
} else {
if(!args[0].includes('(')) {
message.channel.send('Incorrect Syntax: You need a \'(\'');
} else {
for(var e=0; e<args.length; e++) {
if(args[e].includes(')')) {
break;
}
}
//specifically here
if(!args[e].includes(')')) {
message.channel.send('Incorrect Syntax: You need a \')\'')
.catch();
} else {
e++;
if(!args[e].includes('{')) {
message.channel.send('Incorrect Syntax: You need a \'{\'');
} else {
for(var e; e<args.length; e++) {
if(args[e].includes('}')) {
break;
}
}
e = args.length - 1;
if(!args[e].includes('}')) {
message.channel.send('Incorrect Syntax: You need a \'}\'');
} else {
var bigBoiString = args.join(' ');
var e1 = bigBoiString.replace("{", "");
var e2 = e1.replace("}", "");
var e3 = e2.replace("(", "**");
var e4 = e3.replace(")", "**:");
message.channel.send(e4);
}
}
}
}
}
}
});
我假设这意味着变量e没有分配字符串,但是当我使用console.log(e)时,它会给我一个定义的值。此外,假设我运行命令&rpoll(嘿嘿{嘿嘿},我只需输入数字2而不是e,代码运行很好。不知道我缺少了什么。事实上,
e
不是未定义的,并不意味着args[e]
不会未定义。问题是,如果此循环:
for(var e=0; e<args.length; e++) {
if(args[e].includes(')')) {
break;
}
}
for(var e=0;eThanks太多了!可能会从Stackoverflow中删除此内容,因为我忽略了一个错误,这其实不是一个问题,但还是要感谢您。
for(var e=0; e<args.length; e++) {
if(args[e].includes(')')) {
break;
}
}