Задать вопрос
@Gutnov

Почему count в цикле while доходит до -1?

let count = 10;

while(count--) {
  //some code
}

console.log(count)


В итоге, после работы цикла count равняется -1. Хотя, по идее, при count === 0 цикл должен остановится, и в консоли выведется 0, что и происходит при таком написании:

let count = 10;

while(count) {
  //some code
  count--
}

console.log(count)
  • Вопрос задан
  • 113 просмотров
Подписаться 1 Простой Комментировать
Помогут разобраться в теме Все курсы
  • Нетология
    Веб-разработчик с нуля: профессия с выбором специализации
    14 месяцев
    Далее
  • Академия Эдюсон
    Fullstack-разработчик на JavaScript + ИИ
    11 месяцев
    Далее
  • ProductStar × РБК
    Профессия: Инженер по тестированию + ИИ
    6 месяцев
    Далее
Решения вопроса 1
Когда Вы используете постдекремент в условии, происходит нечто вроде 0--, и естественно 0 превращается в false, но после условия count уменьшается. Хотите уменьшать число прямо в условии - используйте предекремент:
let count = 10;

while (--count) {}

console.log(count)
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

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

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