js while循环不满足条件

时间:2017-09-22 18:51:27

标签: node.js while-loop

我写了一个程序,它随机打网球,并返回一系列分数。在程序的最后我有一个while循环,这是不正常的。我有一个函数,它执行所有随机点并将其推送到数组,所以这是循环

while(true){
    lvl();
    if(p1>=3){
        if(g1>=2){
            scr.push("Player 1 win");
            return false
        }
    }
    if(p2>=3){
        if(g2>=2){
            scr.push("Player 2 win");
            return false
        }
    }
}

如果我离开它是真的(真的),唯一的条件就是我的计算机粉碎,如果我把它改成更像是在(p1< 10)的东西,它无论如何都会运行循环,直到p1是9,不用担心if语句,它必须在某些条件下终止循环。我怎样才能解决这个问题?对于信息g1 = p1-p2(并且对于p2也具有相同的信息)。同时在玩游戏时,即使满足所有停止信号,它也会继续播放,直到p1 = 9

  [ [ 'Love-all' ],
  [ 'Fifteen', 'Love' ],
  [ 'Thirty', 'Love' ],
  [ 'Thirty', 'Fifteen' ],
  [ 'Forty', 'Fifteen' ],
  [ 'Forty', 'Thirty' ],
  [ 'Deuce' ],
  [ 'Advantage player 1', 'Forty' ],
  [ 'Deuce' ],
  [ 'Advantage player 1', 'Advantage player 2' ],
  [ 'Advantage player 1', 'Advantage player 2' ],
  [ 'Advantage player 1', 'Advantage player 2' ],
  [ 'Advantage player 1', 'Advantage player 2' ],
  [ 'Advantage player 1', 'Advantage player 2' ],
  [ 'Advantage player 1', 'Advantage player 2' ] ]

这是控制台显示的内容

1 个答案:

答案 0 :(得分:0)

您的计算机崩溃了,因为您可能正在使用100%的CPU利用率或接近该值。你通常不希望while(true)没有某种delay,因为那里的CPU并不是在同一个线程中一直计算某些东西。此外,您希望使用while(true)语句而不是break语句退出return

相关问题