Siento que este problema se ha planteado antes, tal vez tengo un escenario único que no he visto antes en github, pero estoy obteniendo datos de varias fuentes al mismo tiempo, lo que crea varias matrices que necesito recorrer para obtener los datos. necesario. Estoy buscando devolver el valor de una matriz simple de canales de contracción y que el valor solo se registre una vez. En cambio, mis registros están recorriendo matrices vacías, lo que definitivamente es innecesario.
client.on("ready", async () => { const endeavorsServer = client.guilds.cache.get(process.env.DISCORD_GUILD_TOKEN) const connectedChannels = [] let value let grabMembers = [] // Fetch and get the list named 'members' await endeavorsServer.members.fetch().then((members) => { grabMembers = members }) // Loop through every members grabMembers.forEach(async (member) => { value = await newMembers(member) }) console.log(value) if (value && value.length) { console.log('val', value) } }) async function newMembers(member) { const liveRoleId = process.env.DISCORD_LIVE_ROLE_ID const isBot = member.user.bot const liveRole = member.roles.cache.has(liveRoleId) let array = [] let value = null if (!isBot && /* liveRole */ (member.user.username === 'member_id')) { value = await getDiscordUser(member.user) } if (value && value.twitch_channel) { array.push(value.twitch_channel) } return array }