【问题标题】:grabbing all of one value type from a collection从集合中获取所有一种值类型
【发布时间】:2016-11-09 15:08:42
【问题描述】:

我正在开发一个 Discord.js 机器人,试图在命令中为提到的用户添加角色。它将消息的所有提及数据存储在集合 msg.mentions.users 中,看起来像这样。

  '189920214777856000' => User {
 id: '189920214777856000',
 username: 'Warburp',
 discriminator: '2542',
 avatar: 'e83b4777a8abfd7f4cfc0f04761520b4',
 bot: false,
 status: 'online',
 game: null } }

Id 想要做的是将所有提到的 id 收集到一个数组中,这样我就可以使用 for 循环也将它们全部添加到一个角色中。当我尝试使用 Distinct 并找到需要时无法识别它我添加了一个值,并且只找到我指定的内容。

【问题讨论】:

  • 将用户放入一个数组,用array[index].id循环遍历他们,对吧?
  • 这将是我遇到的问题我应该提到这个添加 .id 返回未定义。
  • 回溯,直到您发现在某些时候没有传递 ID。我建议检查它是否在任何地方都无效,但它甚至不是null
  • Idk 在哪里回溯,因为我没有创建它。该集合是 API 的一部分,我只是想将其放入数组中。

标签: javascript arrays collections


【解决方案1】:

Collection.keyArray() 可能是您正在寻找的。据我了解 msg.mentions.users 是一个将 ID 映射到用户对象的集合对象。所以像这样的东西会给你一个用户 ID 的数组:

msg.mentions.users.keyArray()

【讨论】:

  • 完美!这正是我想要的。我在文档中看到了这一点,但我想我只是不明白它做了什么。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2018-06-10
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多