首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >Javascript:按布尔值操作的while循环创建无限循环

Javascript:按布尔值操作的while循环创建无限循环
EN

Stack Overflow用户
提问于 2018-08-27 05:05:28
回答 1查看 82关注 0票数 0

我有一个while循环,当我使用while(x > 0)这样的条件时,它可以工作,但是当我将它改为while(x == true)while(x)时,它会变成无限循环,尽管我有一个将变量改为false的条件。

下面是我的那部分代码的设置。

代码语言:javascript
复制
let appendNums = ['8','2','8','14'], //for testing purposes
    carryCheck = true,
    incAmount  = 0;

incAmount = appendNums.length - 1;

while(carryCheck){
  let currentNum = appendNums[incAmount];

  if(currentNum.length > 1){
    let numSplitter = currentNum.split(''),
        equation    = Number(appendNums[incAmount - 1]) + Number(numSplitter[0]);

    appendNums[incAmount]     = numSplitter[1];
    appendNums[incAmount - 1] = equation.toString();
    incAmount                 = incAmount - 1;
  }
  else{ carryCheck = false; break; }
}

总体而言,我正在开发一个函数来做加法,就像我们在学校里学到的在纸上做加法的方法一样,“带着1过去”。我试图告诉while循环,当当前数字的.length小于2时停止运行,这表明它是一个单位数,不需要携带任何其他数字。在这种情况下,while(x > 0)的方法将不起作用,因为它一直运行在我希望它停止的地方。

我仔细检查了MDN上的语法,在这里遇到了一些文章,人们错误地使用x = true而不是x == truex === true。有没有人能发现我做错了什么?

更新我刚刚尝试将while循环改为while(appendNums[incAmount] > 1),但它仍然进入无限循环。

EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/52030254

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档