Devinora
@Devinora
Front-end web development

Какой результат после цикла While?

1)
var n = 0;

while (n < 3) {
n++;
};
2


2)
var n = 0;

while (n < 3) {
++n;
};
3


1) В первом случаи, когда наступает третья итерация, то в While дает - false, а значит возвращает старый результат - 2, по тому что постфиксный инкремент возвращает старое значение переменной до увеличения? (Это мое предположение).
2) Тут же префиксная форма инкремента дает 3, ибо возвращает уже увеличенное значение переменное.
  • Вопрос задан
  • 159 просмотров
Решения вопроса 1
Devinora
@Devinora Автор вопроса
Front-end web development
Пригласить эксперта
Ответы на вопрос 1
@RoverWhite
1) в первом случае значение переменной n будет после цикла равно 3-м
2) и во втором случае также 3-м
отличия инкримента имели бы смысл в таком виде
var n = 1;
var a = 0;
var b = 0;
a = (n++);
b = (++n);
результат:
a = 1
b = 3
Происходит это потому что x++ сначала возвращает значение переменной а затем инкрементирует, в то время как ++x наоборот сначала инкрементирует а затем возвращает значение переменной.
В вашем же случае не происходит инкрементации и сравнения за один шаг, сначала увеличиваем на 1 а уже после сравниваем.
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы