Какие значения выведет цикл for?
важность: 4
Для каждого цикла запишите, какие значения он выведет. Потом сравните с ответом.
Оба цикла выведут alert
с одинаковыми значениями или нет?
-
Постфиксная форма:
for (let i = 0; i < 5; i++) alert( i );
-
Префиксная форма:
for (let i = 0; i < 5; ++i) alert( i );
Ответ: от 0
до 4
в обоих случаях.
for (let i = 0; i < 5; ++i) alert( i );
for (let i = 0; i < 5; i++) alert( i );
Такой результат обусловлен алгоритмом работы for
:
- Выполнить единожды присваивание
i = 0
перед чем-либо (начало). - Проверить условие
i < 5
- Если
true
– выполнить тело циклаalert(i)
, и затемi++
Увеличение i++
выполняется отдельно от проверки условия (2)
, значение i
при этом не используется, поэтому нет никакой разницы между i++
и ++i
.