如何在条件成立后停止程序执行

how to stop program execution after a condition becomes true

本文关键字:程序 执行 条件      更新时间:2023-09-26

我希望我的程序在条件为true后停止执行。我正在编写代码,根据随机生成的数字测试用户输入,如果猜测与生成的数字相等,我希望防止用户输入更多值,而是收到一条消息,告诉他们他们赢得了比赛。

我有一个简单的表单,用户输入他们的猜测并点击按钮提交。以下是我的功能:

function parseGuess(guess){
var diff = Math.abs(generatedNumber - guess);
    if(diff >= 50){
            view.displayMessage("Ice cold");
        } else if (diff >= 30 && diff < 50){
            view.displayMessage("Cold");
        } else if (diff >= 20 && diff < 30){
            view.displayMessage("Warm");
        } else if (diff >= 10 && diff < 20){
            view.displayMessage("Hot");
        } else if (diff >= 1 && diff < 10){
            view.displayMessage("Very hot");
        } else if(guess === generatedNumber){
            gameOver = true; 
         view.displayMessage("Well done! You guessed the number in " + (controller.guesses + 1)+" guesses");
        }

}

parseGuess在用户单击按钮时调用的控制器对象内部调用:var控制器={

        guesses: 0,
            processGuess: function(guess) {
            var count = document.getElementById("count");   
            //var diff = Math.abs(generatedNumber - guess); 

            console.log(gameOver);

            if (guess <=0 || guess >=101 || isNaN(guess) || guess == "")
                {   
                    return alert("Oops, please enter a number between 1 & 100");
                }

                parseGuess(guess); 
                this.guesses++;
                addListElement(guess); 
                count.innerHTML = this.guesses; //write the guess count into the span  

        return null;
    }
}

您可以使用return从任何函数中返回,例如:

function parseGuess(guess){
var diff = Math.abs(generatedNumber - guess);
    if(diff >= 50){
            view.displayMessage("Ice cold");
            return false;
    }
}

以下是您的示例中的一个fiddle:https://jsfiddle.net/theodin/0e4mso4L/1/