Page 50 - 6105
P. 50
При цьому самі крапки з комою ; обов'язково повинні бути присутніми,
інакше синтаксис буде неправильним.
Існує також спеціальна конструкція for..in для перебору властивостей
об'єкта.
Вийти з циклу можна не тільки під час перевірки умови а й, взагалі, в будь-
який момент. Цю можливість забезпечує директива break. Наприклад, наступний
код підраховує суму чисел, що вводяться до тих пір, поки відвідувач їх вводить, а
потім - видає:
var sum = 0;
while (true) {
var value = + prompt ( "Введіть число", '');
if (! value) break; // (*)
sum + = value;
}
alert ( 'Сума:' + sum);
Директива break в рядку (*), якщо відвідувач нічого не ввів, повністю
припиняє виконання циклу і передає управління на рядок за його тілом, тобто на
alert.
Взагалі, поєднання «нескінченний цикл + break» - відмінна штука для тих
ситуацій, коли умова, за якою потрібно перерватися, знаходиться не на початку-
наприкінці циклу, а посередині.
Наступна ітерація: continue. Директива continue припиняє виконання
поточної ітерації циклу. Вона - в деякому роді «молодша сестра» директиви
break: перериває не весь цикл, а тільки поточне виконання його тіла, як ніби воно
закінчилося. Її використовують, якщо зрозуміло, що на поточному повторі циклу
робити більше нічого. Наприклад, цикл нижче використовує continue, щоб не
виводити парні значення:
for (var i = 0; i <10; i ++) {
49