Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/422.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 为什么';第一次运行时,我的代码不会在控制台上记录任何内容吗?_Javascript_Console_Prompt - Fatal编程技术网

Javascript 为什么';第一次运行时,我的代码不会在控制台上记录任何内容吗?

Javascript 为什么';第一次运行时,我的代码不会在控制台上记录任何内容吗?,javascript,console,prompt,Javascript,Console,Prompt,我目前正在做一个石头、布、剪刀项目,你可以通过prompt()输入一个值,然后通过console.log()记录详细信息来玩这个游戏,但问题是,即使值正确,它也会一直显示提示。我无法通过控制台运行调试,因为它不加载任何内容 基本上,我编写的代码会在不是rock、paper或scissor(不管是哪种情况)的情况下使用提示重新运行函数,但即使它是正确的,它也不会接受它 下面是我制作的一个小片段: function userOption() { let rawUserSelect;

我目前正在做一个石头、布、剪刀项目,你可以通过
prompt()
输入一个值,然后通过
console.log()
记录详细信息来玩这个游戏,但问题是,即使值正确,它也会一直显示提示。我无法通过控制台运行调试,因为它不加载任何内容

基本上,我编写的代码会在不是rock、paper或scissor(不管是哪种情况)的情况下使用提示重新运行函数,但即使它是正确的,它也不会接受它

下面是我制作的一个小片段:

function userOption() {
    let rawUserSelect;
    let userSelect;
    rawUserSelect = prompt("Pick between rock, paper, or scissor");
    if (rawUserSelect !== null) {
        userSelect = rawUserSelect.toLowerCase();
    }

    switch(userSelect) {
        case "rock":
        case "paper":
        case "scissor":
            break;
        default:
            console.log("Please choose between rock, paper, or scissor");
            userSelect = userOption(); //Added '=' operator to fix issue returning previous incorrect value
    }
    return userSelect;
}
以下是注释掉javascript以避免提示循环问题的整个代码的链接:


我知道我可以采取其他方法来避免这个问题,但我想知道为什么代码会循环提示符()。继续进入,直到比赛结束。