You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何从嵌套对象中筛选出room === 'Lobby'的用户数组

从嵌套对象中筛选指定房间的用户数组

嘿,这事儿简单!要从嵌套的users对象里挑出所有room === 'Lobby'的用户,咱们可以用Object.values()先把对象里的用户数据转成数组,再用filter()方法筛选就行。给你看个实际例子:

首先假设你的users对象结构是这样的:

const users = {
  alice123: { id: 1, username: 'Alice', room: 'Lobby' },
  bob456: { id: 2, username: 'Bob', room: 'GameRoom' },
  charlie789: { id: 3, username: 'Charlie', room: 'Lobby' }
};

接下来用这行代码就能得到目标数组:

// 提取所有用户值并筛选出房间为Lobby的用户
const lobbyUsers = Object.values(users).filter(user => user.room === 'Lobby');

console.log(lobbyUsers);
// 输出结果:
// [
//   { id: 1, username: 'Alice', room: 'Lobby' },
//   { id: 3, username: 'Charlie', room: 'Lobby' }
// ]

补充说明

如果你的users对象嵌套得更深(比如用户信息被包在另一个层级里,比如user.profile.room),只需要调整filter里的属性路径就行:

// 假设用户数据嵌套更深的情况
const nestedUsers = {
  alice123: { profile: { id: 1, username: 'Alice', room: 'Lobby' } }
};

const nestedLobbyUsers = Object.values(nestedUsers).filter(user => user.profile.room === 'Lobby');

这样就能灵活应对不同的嵌套结构啦!

内容的提问来源于stack exchange,提问作者Asaf Aviv

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.05.19 09:47:40