任何人都可以告诉我for循环中发生了什么

时间:2015-12-22 05:55:50

标签: javascript

以下是使用for循环计算2 10的代码: 1024答案是怎么来的?

var result = 1;
for ( var counter = 0; counter < 10; counter = counter + 1)
result = result * 2;
console . log ( result );
//  1024

4 个答案:

答案 0 :(得分:2)

基本上

  

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

答案 1 :(得分:1)

由于for循环语句周围没有块({}),所以只有第一个语句在循环中(result = result * 2;),所以它将结果乘以2,10次,即

result = 1 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2 * 2

然后输出结果(1024)。

答案 2 :(得分:1)

您的-(IBAction)go:(id)sender { ActionsViewController *actionsViewController = [AppLibrary createActionsViewController]; actionsViewController.actionDelegate = self; actionsViewController.supportedActionTypes = @[[[SupportedAction alloc] initWithActionType:ActionTypeEdit mediaTypes:@[kTypePNG]]]; [actionsViewController setWhitelistedSubTypes:@[@"adjust", @"filter", @"healing"]]; if (UI_USER_INTERFACE_IDIOM() == UIUserInterfaceIdiomPhone) { self.actionsNavigationController = [[UINavigationController alloc] initWithRootViewController:actionsViewController]; [self presentViewController:self.actionsNavigationController animated:YES completion:nil]; } } 仅运行for loop

现在,您的result = result * 2初始值为result。然后,这将执行1的操作10次,得到result * 2

的结果
1024

答案 3 :(得分:1)

for (statement 1; statement 2; statement 3) {
    code block to be executed
}

语句1在循环(代码块)开始之前执行。

语句2定义了运行循环的条件(代码块)。

每次执行循环(代码块)后都会执行语句3。

在您的情况下,此循环运行10次。在您的&#34;语句1&#34;中,您将计数器分配给0.然后,您定义条件,即for循环将运行,直到counter = =或&gt; 10(直到条件未满足为止)。在&#34;陈述3&#34;你只是在每个循环结束时加一个计数器。

因此,您将变量乘以&#34;结果&#34; (赋值为1)乘以2, 10次。之后,console.log只打印结果变量。

//2^10 = 1024

希望这会有所帮助,这里是for循环语法的链接:http://www.w3schools.com/js/js_loop_for.asp