Возвращая переменную, как только она достигает числа JS for loop - PullRequest
0 голосов
/ 29 апреля 2018

В чем ошибка в этой функции? Я хочу вернуть значение bk, как только оно достигнет 10; но результат не определен?

function doMyLoop () {
  for (var bk = 0; bk < 10; bk++) {
    if (bk == 10) {
    return(bk); 
    } 
  }
}
doMyLoop ();

Ответы [ 2 ]

0 голосов
/ 29 апреля 2018

Вы можете переместить оператор возврата за пределы цикла, поскольку последнее значение bk равно 10. Проверка с этим значением внутри цикла никогда не бывает true.

function doMyLoop () {
    for (var bk = 0; bk < 10; bk++) {
        console.log('insode loop', bk);
    }
    return bk; // 10
}

console.log(doMyLoop());
.as-console-wrapper { max-height: 100% !important; top: 0; }
0 голосов
/ 29 апреля 2018

Потому что ваш цикл никогда не достигнет 10. Так как вы указали условие bk < 10 Измените условие на bk <= 10. И тогда все будет работать

function doMyLoop () {
  for (var bk = 0; bk <= 10; bk++) {
    if (bk == 10) {
        return(bk); 
    } 
  }
}
console.log(doMyLoop ());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...