var computers = new Map();
const mems = client.guilds.cache.get("serverid");
mems.memberCount.forEach(member => {
computers.set(member.user.id, 0);
console.log(computers.get(member.user.id));
});
它发生在此行上:
mems.memberCount.forEach(member => {
我知道memberCount不正确,但是我找不到正确的术语
答案 0 :(得分:0)
不确定您要做什么,但这应该可以锻炼。 Guild#memberCount返回一个number,因此基本上您不能在其上循环。从我看来,您试图在Map中将每个成员的值都添加为0。
您需要遍历Guild#members并将其添加到您创建的地图中。
const computers = new Map();
const server = client.guilds.cache.get("server id");
// if server is not found we will return.
if (!server) return;
server.members.forEach(member => computers.set(member.id, 0));
// or
server.membeers.map(member => computers.set(member.id, 0));
// now you can log computers to find out what you wanna do with it next.
Guild#members返回服务器中已缓存成员的Collection。您可以使用forEach或map从集合中获取成员。
注意:集合扩展了地图