我確實嘗試過這段代碼:
message.client.guilds.cache.forEach((guild) => {
console.log(guild.memberCount)
})
它回傳如下:
300
200
100
etc
如何一口氣得到一個總數,就像它們在一起一樣,所以它顯示為 600,而不是全部分開。我知道還有其他代碼可以顯示公會中的所有用戶,但我只想知道如何以這種方式進行操作,因此我可以擴展代碼并在存在時過濾它們。
我只是不知道如何計算 forEach 或 map 中的值
并最終這樣做
const total = guild.members.cache.filter(member => member.presence?.status == "online").size
console.log(total)
})
問候
uj5u.com熱心網友回復:
您可以撰寫如下函式:
function arrSum(arr){
total = 0;
arr.forEach(function(key){
total = total key;
});
return total;
}
并像這樣使用它:
arrSum(message.client.guilds.cache);
uj5u.com熱心網友回復:
您可以使用 map reduce 鏈接...您可以使用映射檢索“memberCount”并將實際值與 reduce 相加:
const guilds = [
{ memberCount: 100 },
{ memberCount: 200 },
{ memberCount: 300 },
{ memberCount: 400 }
];
const totalMembers = guilds
.map((guild) => guild.memberCount)
.reduce((prev, curr) => prev curr, 0);
console.log(totalMembers);
uj5u.com熱心網友回復:
您可以使用Array.reduce()方法。
const totalUsers = message.client.guilds.cache.map(el => el.memberCount).reduce((a,b) => a b)
轉載請註明出處,本文鏈接:https://www.uj5u.com/qukuanlian/426132.html
標籤:javascript 不和谐.js
