Files
freeCodeCamp/guide/russian/javascript/loops/for-loop/index.md
2019-08-07 10:37:56 -07:00

3.4 KiB
Raw Blame History

title, localeTitle
title localeTitle
For Loop Для цикла

Синтаксис

for ([initialization]); [condition]; [final-expression]) { 
   // statement 
 } 

Оператор javascript for состоит из трех выражений и оператора:

Описание

  • Инициализация - Это выражение обычно используется для создания счетчиков. Переменные, созданные здесь, привязаны к циклу. Как только цикл завершит выполнение, они будут уничтожены.
  • condition - условие которое проверяется перед выполнением каждой итерации. Если условие опущено, то выражение автоматически оценивается как true. Если условие оценивается как true, то цикл продолжается. Цикл остановится когда значение условия станет false.
  • final-expression - выражение, которое запускается после каждой итерации. Обычно используется для увеличения данных счетчика. Но он также может использоваться для уменьшения счетчика.
  • statement - операции которые будут выполняться при каждом цикле.

любое из этих трех выражений или утверждение можно опустить. Для циклов обычно используются для подсчета определенного количества итераций для повторения утверждения. Используйте оператор break для выхода из цикла, до того как условие примет значение false.

Ошибки

Превышение границ массива

При многократном индексировании по массиву легко превзойти границы массива (например, когда ваша программа пытается сослаться на 4-й элемент массива состоящего из 3 элементов).

    // This will cause an error. 
    // The bounds of the array will be exceeded. 
    var arr = [ 1, 2, 3 ]; 
    for (var i = 0; i <= arr.length; i++) { 
       console.log(arr[i]); 
    } 
 
    output: 
    1 
    2 
    3 
    undefined 

Есть два способа исправить эту ошибку. Измените условие на i < arr.length или i <= arr.length - 1 .

Примеры

Итерации через целые числа от 0 до 8

for (var i = 0; i < 9; i++) { 
   console.log(i); 
 } 
 
 output: 
 0 
 1 
 2 
 3 
 4 
 5 
 6 
 7 
 8 

Выход из цикла до выражения условия false

for (var elephant = 1; elephant < 10; elephant+=2) { 
    if (elephant === 7) { 
        break; 
    } 
    console.info('elephant is ' + elephant); 
 } 
 
 output: 
 elephant is 1 
 elephant is 3 
 elephant is 5 

Другие источники