Остановка l oop при выполнении условия - PullRequest
0 голосов
/ 02 апреля 2020

Я хотел бы провести l oop по всему массиву и остановиться, когда мой if-condition будет достигнут, затем поместить значение в мою переменную checked.

Если if-condition не встречается, переменная должна быть установлена ​​false.

Когда я ставлю break, мой скрипт выводит false, чего не должно было быть с тех пор 2002 существует в массиве.

subscriber = [2001, 2002, 2004]

for(i = 0; i < subscriber.length; i++) {
  if (subscriber[i].ID == '2002') {
    checked = 'true';
    break; //added break here
  } else {
    checked = 'false';
  }
  Write(checked);
}

(пожалуйста, не обращайте внимания на свойства объекта, например, ID)

1 Ответ

2 голосов
/ 02 апреля 2020

Похоже, ваш массив subscriber сформирован неправильно. Ваш for l oop указывает на то, что каждый элемент в subscriber является объектом со свойством id.

Опираясь на это предположение, вы можете оптимизировать свой код следующим образом:

const subscribers = [{ id: 2001 }, { id: 2002 }, { id: 2004 }];
const checked = subscribers.some(subscriber => subscriber.id === 2002);

Функция some вернет true, если что-либо в массиве пройдет проверку .

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...