Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/453.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_Html - Fatal编程技术网

Javascript颜色猜测游戏

Javascript颜色猜测游戏,javascript,html,Javascript,Html,我正在通过编写一个颜色猜测游戏来练习javascript编码,其中有一组颜色,其中一个将随机选择为目标颜色。然后将提示用户选择一种颜色。选择经过一些条件,如果正确,页面的背景颜色将更改以匹配正确的颜色。这些是游戏的基础。我甚至无法运行代码的警报。我不知道这个问题。多谢各位 这是我的密码 警报(“正常”); var颜色=[“珊瑚”、“橄榄”、“卡其色”、“青柠色”、“红色”、“栗色”、“黄色”、“绿色”、“兰花”]; var alpha_colors=colors.sort(); 返回alpha

我正在通过编写一个颜色猜测游戏来练习javascript编码,其中有一组颜色,其中一个将随机选择为目标颜色。然后将提示用户选择一种颜色。选择经过一些条件,如果正确,页面的背景颜色将更改以匹配正确的颜色。这些是游戏的基础。我甚至无法运行代码的警报。我不知道这个问题。多谢各位

这是我的密码


警报(“正常”);
var颜色=[“珊瑚”、“橄榄”、“卡其色”、“青柠色”、“红色”、“栗色”、“黄色”、“绿色”、“兰花”];
var alpha_colors=colors.sort();
返回alpha_颜色;
var finished=false;
var猜测=0;
函数do_game(){
警报(“目前还可以”);
var num_colors=colors.length-1;
var target=colors[math.floor.random()*num\u colors]
做{
var color\u guess=prompt(“我正在考虑这些颜色\n\n”+alpha\u颜色+“我在考虑什么颜色?”);
猜测+=1;
完成=检查猜测();
}while(finished=false);
}
函数checkguess(){
if(colors.indexOf(color\u guess)=-1){
警报(“对不起,我不认识您的颜色。\n\n请再试一次。”);
返回false;
}
如果(颜色目标){
警告(“对不起,您的猜测不正确。\n\n提示:您的颜色按字母顺序比我的高”);
返回false;
}
警告(“祝贺您!您已经猜到了颜色!\n\n完成游戏需要“+猜测+”猜测!\n\n您可以在背景中看到颜色”);
返回true;
}
style.background color=目标

脚本标记的第4行有一条返回语句:

return alpha_colors;

Return语句只能在函数内部。此外,在实际定义“do_game”函数之前,您正在引用该函数。

您犯了一些初学者错误

  • 使用“return”后,将结束当前范围内的所有内容。所以 当您在第4行返回alpha_颜色时,您的代码位于该行之后 永远不会跑
  • 这不是按字母顺序比较字符串的方式
  • math.floor.random()不是生成随机数的方法。下次 尝试Math.floor(Math.random()*maxNumber)
  • 比较两件事时,使用==或==。永远不要“=”!编程中的“=”与数学中的“=”不同。要将值设置为变量时使用“=”,要比较两个值时使用“=”
    警报(“正常”);
    var colors=[“黑色”,
    “绿色”,
    “黄色”
    ];
    var alpha_colors=colors.sort();
    var finished=false;
    var猜测=0;
    var target=colors[Math.floor(Math.random()*alpha_colors.length)];
    函数do_game(){
    警报(“目前还可以”);
    var color\u guess=prompt(“我正在考虑这些颜色\n\n”+alpha\u颜色+“我在考虑什么颜色?”);
    猜测+=1;
    checkguess(颜色猜);
    }
    函数checkguess(颜色猜){
    如果(颜色猜测=“停止”){
    返回false;
    }
    if(colors.indexOf(color\u guess)=-1){
    警报(“对不起,我不认识您的颜色。\n\n请重试”);
    做游戏();
    }
    如果(颜色猜测<目标){
    警告(“对不起,您的猜测不正确。\n\n提示:您的颜色按字母顺序比我的颜色低”);
    做游戏();
    }
    如果(颜色>目标){
    警告(“对不起,您的猜测不正确。\n\n提示:您的颜色按字母顺序比我的高”);
    做游戏();
    }
    if(colors.indexOf(color\u guess)>=0){
    警告(“祝贺您!您已经猜到了颜色!\n\n完成游戏需要“+猜测+”猜测!\n\n您可以在背景中看到颜色”);
    }
    document.body.style.backgroundColor=目标;
    }
    
    
    Uncaught SyntaxError:第10行的非法返回语句
    ,然后是第3行的
    Uncaught ReferenceError:do_game未定义
    (编辑:调整行号,代码段不需要doctype/html//body)打开浏览器的JavaScript控制台,并修复它报告的错误。