Перейдите к" следующей " итерации в цикле javascript forEach [дубликат]
этот вопрос уже есть ответ здесь:
"продолжить" в курсор.forEach ()
2 ответы
Как перейти к следующей итерации Javascript Array.forEach() петли?
например:
var myArr = [1,2,3,4];
myArr.forEach(function(elem){
if (elem === 3) {
// Go to "next" iteration. Or "continue" to next iteration...
}
console.log(elem);
});
Я действительно удивлен, что это уже не вопрос-так что поиск появляется ничего, то же самое с предлагаемыми ответами. MDN docs только упомяните выход из цикла полностью, не переходя к следующей итерации.
3 ответов:
можно просто
returnЕсли вы хотите пропустить текущую итерацию.Так как вы находитесь в функции, если вы
returnпрежде чем делать что-либо еще, то вы фактически пропустили выполнение кода нижеreturnзаявление.
JavaScript forEach работает немного иначе, чем можно было бы использовать для других языков для каждого цикла. Если читать на MDN, Он говорит, что a функции выполняется для каждого элемента в массиве в порядке возрастания. Чтобы перейти к следующему элементу, то есть запустить следующую функцию, вы можете просто вернуть текущую функцию без каких-либо вычислений.
добавление возврата, и он перейдет к следующему запуску петля:
var myArr = [1,2,3,4]; myArr.forEach(function(elem){ if (elem === 3) { return; } console.log(elem); });выход: 1, 2, 4
просто верните true внутри вашего оператора if
var myArr = [1,2,3,4]; myArr.forEach(function(elem){ if (elem === 3) { return true; // Go to "next" iteration. Or "continue" to next iteration... } console.log(elem); });
Comments