Node.js 无法读取属性';长度';使用sendMessage函数定义未定义的
所以我希望我的机器人在某个服务器上每10分钟向一个随机成员发送一个dm。当我的机器人从服务器向每个人发送一个dm时,它会发送一条完整的消息 但当我启动我的机器人时,他说这个错误代码:无法读取未定义的属性“length”Node.js 无法读取属性';长度';使用sendMessage函数定义未定义的,node.js,discord,discord.js,Node.js,Discord,Discord.js,所以我希望我的机器人在某个服务器上每10分钟向一个随机成员发送一个dm。当我的机器人从服务器向每个人发送一个dm时,它会发送一条完整的消息 但当我启动我的机器人时,他说这个错误代码:无法读取未定义的属性“length” if (message.content.startsWith(botconfig.prefix + 'dmall')) { console.log("demo"); var list = message.guild.members; sendMessag
if (message.content.startsWith(botconfig.prefix + 'dmall')) {
console.log("demo");
var list = message.guild.members;
sendMessage(list);
}
});
function sendMessage(list) {
setTimeout(function () {
for (i = 0; i < list.length; i++) {
console.log(list.length);
}
console.log("I'm done, mate!");
sendMessage();
}, 10 * 1000);
}
if(message.content.startsWith(botconfig.prefix+'dmall')){
控制台日志(“演示”);
var list=message.guild.members;
发送消息(列表);
}
});
函数sendMessage(列表){
setTimeout(函数(){
对于(i=0;i
控制台:
演示
4(是成员的金额)
4.
4.
4.
对于(i=0;i
第二次调用sendMessage
函数时,您没有传递列表
参数
function sendMessage(list) {
setTimeout(function () {
for (i = 0; i < list.length; i++) {
console.log(list.length);
}
console.log("I'm done, mate!");
sendMessage(list); // Added this
}, 10 * 1000);
}
函数发送消息(列表){
setTimeout(函数(){
对于(i=0;i
它是否记录了“我完成了,伙计!”
?是的,但它表示无法读取未定义的属性'length'。列出了[I]
记录了什么?服务器中的成员数好的。第二次调用sendmages()
时,您没有传递list
参数。它应该是sendmages(list)
在console.log(“我做完了,伙计!”)之后。
现在可以工作了,谢谢!但是为什么它发送的成员数量是原来的4倍?@MoadTouhafi建议为您的查询创建一个新问题。您可以共享链接(新问题)这里。@MoadTouhafi同样,如果我的回答满足了你的疑问,你介意接受它作为正确的答案吗?你怎么认为?这可能会帮助你:)
function sendMessage(list) {
setTimeout(function () {
for (i = 0; i < list.length; i++) {
console.log(list.length);
}
console.log("I'm done, mate!");
sendMessage(list); // Added this
}, 10 * 1000);
}