если вы хотите перенаправить на «first_page», если ЛЮБОЙ элемент в данных массива соответствует условию, или «second_page», если ни один из них не соответствует условию,
Самое простое изменение вашего кода -
app.post('/process', function(request, response) {
var i = 0;
while (i < data.length) {
if (data[i].condition1 == condition1 && data[i].condition2 == condition2) {
response.redirect('/first_page');
return; // done, no need to check any more of data
}
i++;
}
response.redirect('/second_page');
});
Однако использование Array#some
с if / else будет работать
app.post('/process', function(request, response) {
if (data.some(item => item.condition1 == condition1 && item.condition2 == condition2)) {
response.redirect('/first_page');
} else {
response.redirect('/second_page');
}
});
data.some
вернет true, если какой-либо элемент данных соответствует условию, в противном случае вернется false
Лично япредпочитаю код Array.some, так как он более аккуратный и более понятный в отношении того, что происходит