Page 98 - Браун Э. - Изучаем JavaScript. Руководство по созданию современных веб-сайтов - 2017
P. 98
В этом цикле for условие undefined, что соответствует лжи, а значит, у цикла
никогда не будет причины завершиться.
Как правило в обычных циклах for выполняется инкремент или декремент цело
численного индекса, но это не обязательно, работать будет любое выражение. Вот
несколько примеров.
let s = ' 3 ' ; / / строка , содержащая число
<
for ( ; s . length l O ; s ' ' + s ) ; // дополненная нулями строка ; обратите
11 внимание, что нужно включить точку с
11 запятой, чтобы закончить цикл for !
for ( l e t х=О . 2 ; х<З . 0 ; х += 0 . 2 ) // инкремент не целого числа
console . l og ( x ) ;
e
for ( ; ! p lay r . i sBroke ; ) 1 1 использование свойства объекта в условии
console . l og ( "Bce еще в игр ! " ) ;
е
Обратите внимание, что цикл for всегда можно переписать как цикл wh l e. Дру
i
гими словами,
for [ инициализация] ; [ у словие] ; [ з аключительное_ выражение ) ]
(
оператор
эквивалентно
[ и нициализация]
while ( [ у словие] )
оператор
[заключительное_ выражение]
Однако тот факт, что цикл for можно переписать как цикл while, вовсе не оз
начает, что это нужно делать. Преимущество цикла for в том, что вся информация
для управления циклом находится тут же, в первой строке, делая происходящее
вполне очевидным. Кроме того, инициализация переменных с ключевым словом let
в цикле for ограничивает их область видимости телом цикла (больше об этом -
i
в главе 7); если преобразовать такой оператор for в оператор wh l e , то управляющие
переменные при необходимости будут доступны за пределами тела цикла for.
Onepaтopы switch
В то время как операторы f . . . e l s e позволяют выбрать один из двух путей, опе
i
раторы switch позволяют выбрать один путь из нескольких на основании едино
го условия. Для этого условие должно быть чем-то большим, чем значение "истина/
ложь": условие оператора swi c h - это выражение, вычисление которого дает значе
t
ние. Синтаксис оператора swi c h таков.
t
switсh ( выражение) {
l
case значение :
Операторы управления потоком в JavaScript 97

