Я часто сталкиваюсь с этим сценарием и просто хотел бы знать, является ли мое решение лучшим и может ли быть что-то лучше. Во многих случаях у меня есть цикл forEach
, и я хочу проверить, является ли какое-либо из значений неправильным, если они есть, завершить код (return
). Вот что бы я делал без цикла:
const email = '...';
if (email.isInvalid) return;
В цикле я бы сделал это:
const emailList ['...', '...', '...'];
const emailErrors = [];
emailList.forEach((element) => {
// if (element.isInvalid) return; // This won't work here, it just ends this loop instance, which is my problem
if (element.isInvalid) emailErrors.push(element);
});
if (emailErrors.length > 0) return; // This will end the code correctly
Есть ли лучший подход к этой идее? Используя try, catch
или что-то еще?