здравствуйте! Циклы позволяют повторять выполнение программного кода определённое или не определенное (бесконечные циклы) количество раз.
Конструкции while и for похожи, но отличаются синтаксисом:
var i = 0;
while (i < 3)
{ //
В цикле while переменная счетчик, например i, объявляется вне цикла, а инкремент счетчика происходит где-то внутки тела цикла (i++;). Цикл while выполняется, пока истинно некоторое условие, указанное перед его началом. Это условие проверяется до выполнения тела цикла, поэтому тело может быть не выполнено ни разу (если условие с самого начала ложно).
Тело цикла - инструкции внутри скобок { }.
for (var count = 0; count < 5; count++)
{ //
Цикл for - это цикл со счетчиком, например переменная count. Если условие выполняется, то переменная счетчик изменяет своё значение от заданного начального значения до конечного значения с некоторым шагом, и для каждого значения этой переменной тело цикла выполняется один раз
В плане использования, лучше всегда стараться использовать for или for-in, так как объявление счетчика, условие завершения и инкремент всегда расположена в одном месте, что упрощает чтение и сопровождение программ. Далеко не всегда алгоритм удобно описать при помощи цикла for, тогда стоит рассмотреть другие циклы, в том числе while.
Пример цикла for-in:
var values = [1, 2, 3, 4]
for (var key in values)
{
console.log(values[key]);
}