array() 函数 returns 一个对象
array() function returns an object
我有问题discord.js
我试图让所有扮演 let gplayers = games_array[0].role.members
角色的玩家,但因为它 returns 一个类似于 {"123" => GuildMember {}, "456" => GuildMember {} ...}
的对象,我只需要 "123"
和 "456"
个对象我尝试使用 let gplayers = games_array[0].role.members.array()
然后使用 gplayers[i]
m 但它没有用。
我试图检查出了什么问题,我发现 gplayers
是一个对象,即使我使用了 array()
函数。
console.log('Members: ', JSON.stringify(games_array[0].role.members, null, 4))
日志 Members: {}
如何将我的对象存储在数组中?
您可以循环遍历键(在本例中为“123”、“456”等)并将它们的值推送到一个新数组中。
let players = [];
let members = games_array[0].role.members;
for(key in members) {
players.push(members[key]);
}
可以使用for-in循环来循环遍历返回对象的属性
var gplayers = games_array[0].role.members;
var key;
for (key in gplayers) {
// do whatever you want here
// you can access the key's associated value as gplayers[key]
}
您可以在最近的引擎中使用 Object.values
:
let players = Object.values(games_array[0].role.members)
终于找到解决办法了:我用的就是这个方法
collection.forEach(function(guildMember) {
//guildMember is now a User object, and I can do everything using properties
console.log(guildMember.user.username);
})
解决方案线程:
我有问题discord.js
我试图让所有扮演 let gplayers = games_array[0].role.members
角色的玩家,但因为它 returns 一个类似于 {"123" => GuildMember {}, "456" => GuildMember {} ...}
的对象,我只需要 "123"
和 "456"
个对象我尝试使用 let gplayers = games_array[0].role.members.array()
然后使用 gplayers[i]
m 但它没有用。
我试图检查出了什么问题,我发现 gplayers
是一个对象,即使我使用了 array()
函数。
console.log('Members: ', JSON.stringify(games_array[0].role.members, null, 4))
日志 Members: {}
如何将我的对象存储在数组中?
您可以循环遍历键(在本例中为“123”、“456”等)并将它们的值推送到一个新数组中。
let players = [];
let members = games_array[0].role.members;
for(key in members) {
players.push(members[key]);
}
可以使用for-in循环来循环遍历返回对象的属性
var gplayers = games_array[0].role.members;
var key;
for (key in gplayers) {
// do whatever you want here
// you can access the key's associated value as gplayers[key]
}
您可以在最近的引擎中使用 Object.values
:
let players = Object.values(games_array[0].role.members)
终于找到解决办法了:我用的就是这个方法
collection.forEach(function(guildMember) {
//guildMember is now a User object, and I can do everything using properties
console.log(guildMember.user.username);
})
解决方案线程: