@OrdeO
just......newbie

Как разобраться с работой цикла в js?

Здравствуйте, начал изучать JS с самых основ, помогите разобраться с работой цикла.
Есть небольшая функция, которая определяет простое число или нет:
function isPrime(n) {
    for (var i = 2; i < n; i++) {
        if ( n % i === 0) return false;
        }
    return true;
}

console.log(isPrime(12));


Вопрос вот в чем, у нас конкретный случай 12! Т.е. на первой итерации
12: 2 ост 0 условие выполнилось и вернулось false
На этом работа функции прекращается. Вопрос:
раз это цикл почему возвращается только 1 false почему не возвращается false для следующих итераций, например
12 : 3 ост 0 еще один false
12 : 4 и т.д. почему результаты эти проверок игнорируются?
  • Вопрос задан
  • 207 просмотров
Решения вопроса 2
zendor
@zendor
При использовании return функция завершает свое выполнение и возвращает значение, в данном случае false.
Ответ написан
wapster92
@wapster92 Куратор тега JavaScript
Когда функция, что либо возвращает через return, она выходит из стека и прекращает свою работу.
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 2
sergiks
@sergiks Куратор тега JavaScript
♬♬
function f() {
  var a = 42;
  return a; // баста, карапузики!
  
  a = a + 1; // никогда не выполнится
}
Ответ написан
Комментировать
Lynn
@Lynn
nginx, js, css
Вы же сами написали «работа функции прекращается». Нет больше никакого цикла и никаких следующих итераций.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы