Вот код, который вычисляет 2 10, используя цикл for: Как появился ответ 1024?
var result = 1;
for ( var counter = 0; counter < 10; counter = counter + 1)
result = result * 2;
console . log ( result );
// 1024
4 ответа
В принципе
1024 = 2 10
(2 * 2 ... 10 раз)
Цикл for повторяется 10 раз, каждый раз результат умножается на 2 (изначально был 1).
Отступ, который вы делаете, дает код
var result = 1;
for ( var counter = 0; counter < 10; counter = counter + 1)
result = result * 2;
console . log ( result ); // display result in console
Ваш for loop
работает только result = result * 2
.
Теперь ваше result
начальное значение - 1
. Затем это выполнит операцию result * 2
10 раз, что даст результат 1024
2
4
8
16
32
64
128
256
512
1024
for (statement 1; statement 2; statement 3) {
code block to be executed
}
Оператор 1 выполняется перед началом цикла (блока кода).
Оператор 2 определяет условие для запуска цикла (блок кода).
Оператор 3 выполняется каждый раз после выполнения цикла (блока кода).
В вашем случае этот цикл выполняется 10 раз. В своем «операторе 1» вы назначаете счетчик 0. Затем вы определяете условие, которое заключается в том, что цикл for будет работать до тех пор, пока счетчик не станет равным = или> 10 (так, пока условие не будет выполнено). В «заявлении 3» вы просто добавляете единицу к счетчику в конце каждого цикла.
Таким образом, вы умножаете переменную «result» (которой присваивается значение 1) на 2, 10 раз . После этого console.log просто печатает переменную результата.
//2^10 = 1024
Надеюсь, это поможет, вот ссылка на синтаксис цикла: http://www.w3schools.com/js /js_loop_for.asp
Поскольку у вас нет блока ({}
) вокруг операторов цикла for, в цикле находится только первый оператор (result = result * 2;
), поэтому он умножает результат в 2, 10 раза, т.е.
result = 1 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2
И после этого вы выводите этот результат (1024
).
Похожие вопросы
Новые вопросы
javascript
По вопросам программирования на ECMAScript (JavaScript / JS) и его различных диалектах / реализациях (кроме ActionScript). Включите все соответствующие теги в свой вопрос; например, [node.js], [jquery], [json] и т. д.