我有一个称为计时器的对象。在计时器中,我还有两个其他对象,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中,因为它们都是真实的。有任何想法吗?

最佳答案

在这里开始(编辑:注意,您想为此使用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]++);

关于javascript - 检查对象中的每个 boolean 值,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/52366806/

10-09 17:14