• Теория
  • Теория

Драйвер печати: страницы в обратном порядке

Теперь выведем страницы в обратном порядке.

Режим будет называться 'reverse', нужно добавить условие и отдельный цикл.

Как писать циклы по подобным условиям: «Добавьте цикл, который уменьшает значение переменной i от 10 до 1 включительно. Уменьшайте значение i на единицу на каждой итерации»? Как обычно, будем разбираться постепенно.

»…цикл, который уменьшает значение переменной i от 10 до 1 включительно». Счётчик здесь i, а его стартовое значение 10. Записываем.

for (let i = 10;) {
  …
}

»…цикл, который уменьшает значение переменной i от 10 до 1 включительно». Это значит, что цикл закончит свою работу, когда i станет равно 0. При i = 1 цикл совершит очередную итерацию. Так как стартовое значение счётчика 10 и оно будет уменьшаться до 1 включительно, нам подойдёт знак «больше или равно». Сравнивать будем с 1 так как это значение, после которого цикл должен остановиться.

for (let i = 10; i >= 1;) {
  …
}

Обратите внимание, что условие можно написать и немного по-другому. Если нам нужно учесть значение 1, но при значении меньше 1 закончить работу цикла, то можно использовать знак «больше». Только сравнивать его с 0. Тогда единица точно будет использоваться в качестве значения счётчика, а при 0 цикл закончит свою работу.

for (let i = 10; i > 0;) {
  …
}

Есть два варианта написать условие в таких случаях, и оба верные. Можете использовать любой.

«Уменьшайте значение i на единицу на каждой итерации». Здесь привычное нам изменение значения на единицу. Только теперь мы не увеличиваем значение счётчика, а уменьшаем, поэтому используем декремент.

for (let i = 10; i > 0; i--) {
  …
}

Вернёмся к принтеру. В этом режиме мы будем считать страницы в обратном порядке и ждать, когда напечатается последняя страница, в нашем случае первая, так как счёт идёт с конца. Счётчик page у нас уже был, поэтому используем reversePage раз считаем страницы в обратном порядке.

Минимальный вид табов
  • index.html
HTML
HTML

Вы перешли на другую страницу

Кликните внутри мини-браузера, чтобы поставить фокус в это окно.

100%
Бабушка Кекс

Притормози, дружище

Проходить вызовы части «Циклы» тренажёра «Программирование на JavaScript — основы языка» можно после регистрации и оформления подписки.