我有一个称为计时器的对象。在计时器中,我还有两个其他对象,active和roomTime。
使用timers.active
返回房间名称和布尔值,如下所示:
{room1: true, room2: true, room3: false}
使用timers.roomTime
返回一个数字,如下所示:
{room1: 0, room2: 8, room3: 65}
我的问题是:我该如何创建一个函数,以便在使用时检查每个timers.active
中的true
,以及true
是否对timers.roomTime
中的数字进行++标记? ?
对于上下文,我想使用myFunction()
并将其添加到room1和room2中,因为它们都是正确的。有什么想法吗?
答案 0 :(得分:1)
在这里(编辑:注意到您想为此使用myFunction
。嗯,您应该根据此代码自行弄清楚):
// setup
timers = {};
timers.active = {room1: true, room2: true, room3: false};
timers.roomTime = {room1: 0, room2: 8, room3: 65};
// filter for active rooms
const activeRooms = Object.keys(timers.roomTime).filter((key) => timers.active[key]);
// mutate roomTime based on active rooms
activeRooms.forEach((roomId) => timers.roomTime[roomId]++);