Ваш цикл никогда не заканчивается.
В вашем сценарии i=10
из for(var i=1; i=10; i++)
должно быть condition
.Но i=10
состоит в том, что он заменяет 10
на i
.Поэтому, когда for(var i=1; i=10; i++)
выполняется:
- В 1-м цикле он заменяет
10
на i
.i
становится 10
. - 1 исходного значения заменяется на
10
на i=10
.
- Во 2-м цикле это добавляет
1
к i
.i
становится 11
. - На 3-м цикле он заменяет
10
на i
.i
становится 10
. - В 4-м цикле это добавляет
1
к i
.i
становится 11
. - На 5-м цикле он заменяет
10
на i
.i
становится 10
.
Решение:
Если вы хотите выполнить цикл от 1 до 10, как насчет изменения на подобное?
for (var i = 1; i <= 10; i++) {
// do something
}
Кроме того, например, когда вы хотите выполнить цикл 10 раз, как насчет модификации, чтобы сделать это так?
for (var i = 0; i < 10; i++) {
// do something
}
О выпуске:
Документация по Javascript for
оператор описывает:
A для повторов цикла, пока указанное условие не станет ложным.Цикл JavaScript for похож на цикл Java и C for.Оператор for выглядит следующим образом:
for ([initialExpression]; [condition]; [incrementExpression])
statement
При выполнении цикла for происходит следующее:
- Инициализирующее выражение initialExpression, если оно есть, выполняется.Это выражение обычно инициализирует один или несколько счетчиков цикла, но синтаксис допускает выражение любой степени сложности.Это выражение также может объявлять переменные.
- Выражение условия вычисляется.Если значение условия истинно, операторы цикла выполняются.Если значение условия равно false, цикл for завершается.Если выражение условия полностью опущено, условие считается истинным.
- Оператор выполняется.Чтобы выполнить несколько операторов, используйте оператор блока ({...}) для группировки этих операторов.Если присутствует, выполняется выражение update incrementExpression.Управление возвращается к шагу 2.