Проверьте каждый логический объект - PullRequest
0 голосов
/ 17 сентября 2018

У меня есть объект под названием таймеры. В Timers у меня есть два других объекта, 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() и добавить 1 к комнате1 и комнате2, так как они оба истинны. Есть идеи?

1 Ответ

0 голосов
/ 17 сентября 2018

Вот, пожалуйста ( Редактировать: заметил, что вы хотите использовать для этого 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]++);
...