我有一个由 2 个用户组成的对象,如下所示。该对象将只包含 2 个用户。
{
"71":{
"avatarURL":"__vue_devtool_undefined__",
"createdAt":"2018-10-13T16:05:19Z",
"customData":"__vue_devtool_undefined__",
"id":"71",
"name":"Angeline Fadel",
"updatedAt":"2018-10-13T16:05:19Z",
"presenceStore":{
"71":"online"
}
},
"199":{
"avatarURL":"__vue_devtool_undefined__",
"createdAt":"2018-10-13T16:06:13Z",
"customData":"__vue_devtool_undefined__",
"id":"199",
"name":"Rodrigo Schuster",
"updatedAt":"2018-10-13T16:06:13Z",
"presenceStore":{
"71":"online"
}
}
}
假设我的用户 ID 是 199,如何在不知道其他用户 ID 的情况下获取其名称?
最佳答案
使用Object.keys
,您可以获得一个键数组:
const users = { 199: {...}, 71: {...} };
const ids = Object.keys(users); // -> ['199', '71']
知道数组仅包含两个项目和“other”键,您可以使用 Array.prototype.find
获取其他项目:
const myId = '199';
const targetId = ids.find(id => id !== myId); // -> '71'
请记住,对象键始终是字符串,因此您可能需要调整 ID 的过滤和操作,将它们视为(或强制转换为)数字。
关于Javascript对象通过属性获取对象,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54959554/