【问题标题】:what does ++ mean in While Loop statement [duplicate]++在While Loop语句中是什么意思[重复]
【发布时间】:2016-07-02 05:00:40
【问题描述】:

注意:我是 JavaScript 新手,所以无法搜索和理解 如果这个问题与其他问题有关,则与 JS 有关。一世 认为这是提问的平台。

我正在尝试理解基本的 While 循环语句,我正在计算 0 到 9,如下所示:

<!DOCTYPE html>
<html>
<head>
  <meta charset="utf-8">
  <meta name="viewport" content="width=device-width">
  <title>JS Bin</title>
</head>
<body>

  <script type="text/javascript">
var myCounter = 0;
var linebreak = "<br />";
document.write(linebreak);

while(myCounter < 10){
document.write("My Counter = " + myCounter);
document.write(linebreak);
myCounter++;
}

document.write("While loop is finished!");
</script>
  
</body>
</html>

我的问题是myCounter++; 的作用是什么,它是什么意思?为什么++

【问题讨论】:

  • 意思是myCounter = myCounter +1,它增加了变量的全部
  • 意思是所有 JavaScript 教程和参考资料所说的意思,你知道,你读过的那些。见the MDN page
  • 尝试删除它,你会看到魔法:)
  • @AjayPandya 有反对票,有票数接近。由于特定原因,应该进行近距离投票,据我所知,这些问题都不满足。但是,否决投票是一个很好的问题,因为它没有显示任何研究工作并且没有用处。如果投票不够,它将很快被删除,但仅当它没有接受的答案并且没有正面分数的答案,这意味着相对于答案有一些明显的可能步骤,如果问题一开始就没有用,这很难被认为是有用的。

标签: javascript while-loop


【解决方案1】:

根据您的问题,myCounter++ 的作用是什么;

这意味着 + 运算符会将变量 myCounter 的值增加 1 ,这是后递增,您也可以使用 myCounter=myCounter+1 递增 1,myCounter=myCounter +2 递增 2

后增量表示循环条件检查 再次循环之前的条件语句。 因此,当 myCounter 等于 x 时,循环中断。 myCounter 在条件检查之前更新。

【讨论】:

  • 我很困惑,你说“myCounter+1 增加 1”,但这将计算将 1 添加到 myCounter 的结果,然后将结果丢弃,除非你指定结果返回myCounter
  • 是的,对不起,我忘了必须再次分配它,否则会抛出没有增量。
【解决方案2】:

'++' 是增量运算符。

'myCounter++' 等于'myCounter = myCounter + 1'

所以'myCounter'变量会一直增加直到'myCounter >= 10'


如果运算符出现在变量 (++myCounter) 之前,则在计算表达式之前修改值。 如果运算符出现在变量 (myCounter++) 之后,则在计算表达式后修改值。

【讨论】:

  • myCounter++ 等于 myCounter = myCounter + 1 这纯粹是不正确的,至少如果您的意思是 myCounter++ 通常可以替换为 myCounter = myCounter + 1 并且有相同的语义。
【解决方案3】:

作为上述所有答案/cmets 的扩展,请注意“for”/“while”循环中的计数器不必单独递增 1。如果使用 ++,则递增值将为 1,但如果您想要不同的增量值,请使用以下内容:

myCounter+=2;

这将使 myCounter 增加 2...等等

同样 - 您可以减少计数器,但如下:

myCounter--;
myCounter-=2;

还要注意,这将在函数之后增加/减少值。如果要先增加/减少值,请将 ++ 或 -- 放在 myCounter 前面。

++myCounter;
--myCounter;

【讨论】:

    【解决方案4】:
    ++ is the increment operator..for ex i++ means i=i+1      
    
    for(int i=0;i<10;i++)
    {
        System.out.printline(i);
    }
    In the following example first of all the intial value of i is 0 so 0<10 it comes inside the loop and print the value of i again the value of i is incremented to 1(i=i+1)
    

    【讨论】:

    • 什么是System.out?实际上i++ 确实 NOT 表示i=i+1,至少在你可以用另一个替换一个的意义上不是,因为前者使用增量运算符计算为 pre-increment 值。另外,为什么要通过缩进将第一行和最后一行格式化为代码?请阅读格式指南。
    【解决方案5】:

    ++ 是一个自增运算符。

    它将变量的值增加 1。 在这种情况下,它确保循环实际上在某个点结束,因为只要 myCounter

    【讨论】:

      猜你喜欢
      • 2011-11-18
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2018-05-18
      • 2011-08-15
      • 1970-01-01
      • 1970-01-01
      相关资源
      最近更新 更多