Как можно выйти из цикла foreach js
Ответы
Aleksey
05 апреля 2023
В JavaScript цикл forEach
не имеет стандартного способа выйти из него до его завершения. Как уже упоминалось, оператор break
не работает в цикле forEach
. Однако, можно использовать исключения (throw) для выхода из цикла.
Пример кода, который использует исключения для выхода из цикла forEach
:
const array = [1, 2, 3, 4, 5];
let isValueFound = false;
try {
array.forEach(function (element) {
if (element === 3) {
isValueFound = true;
throw new Error('Value found');
}
});
} catch (e) {
if (e.message !== 'Value found') {
throw e;
}
}
if (isValueFound) {
console.log('Value is found');
} else {
console.log('Value is not found');
}
Однако, использование исключений может сделать код менее читаемым и более сложным в отладке, поэтому использование исключений для управления потоком программы следует ограничивать только крайними случаями.
2
0
Maksim Litvinov
22 октября 2021
Цикл for...of автоматически закончит работу, когда будут перебраны все элементы итерируемого объекта. Чтобы аварийно выйти из цикла, можно использовать оператор break
const word = 'abcde';
let result = '';
for (const char of word) {
if (char === 'c') {
break;
}
result += char.toUpperCase();
}
console.log(result);
0
1