Javascript数组排序
我正在学习编码,我需要一些帮助。我正在做一个游戏,玩家必须猜一个颜色。如果播放机写入的字符串不在数组中,我需要帮助。我一直在努力寻找解决办法,但我找不到 代码在这里:Javascript数组排序,javascript,html,arrays,sorting,Javascript,Html,Arrays,Sorting,我正在学习编码,我需要一些帮助。我正在做一个游戏,玩家必须猜一个颜色。如果播放机写入的字符串不在数组中,我需要帮助。我一直在努力寻找解决办法,但我找不到 代码在这里: <script> var guess_input; var target_index; var target; var color = ["cyan", "magenta", "green", "blue", "red"]; var finished = false;
<script>
var guess_input;
var target_index;
var target;
var color = ["cyan", "magenta", "green", "blue", "red"];
var finished = false;
var count = 0;
function do_game() {
var target_index = Math.random() * color.length;
var target_index = Math.floor(target_index);
var target = color[target_index];
alert(target);
while(!finished) {
var guess_input = prompt("I am thinking one of these colors: " + "\n\n" + color.sort() + "\n\n" + "What color am I thinking of?");
count++;
alert(guess_input);
var finished = check_guess();
}
function check_guess() {
//HERE I NEED A CODE IN THE CASE THAT
//THE PLAYER WRITE AN STRING THAT IS
//NOT IN THE ARRAY OF COLOURS
if (target > guess_input) {
alert("Your color is lower");
return false;
}
if (target < guess_input) {
alert("Your color is higher")
return false;
}
if (target===guess_input) {
myBody=document.getElementsByTagName("body")[0];
myBody.style.background=target;
alert("Congratulations, you have guessed, it took you " + count + " times")
return true;
}
}
}
</script>
var-u输入;
var目标指数;
var目标;
颜色变量=[“青色”、“洋红”、“绿色”、“蓝色”、“红色”];
var finished=false;
var计数=0;
函数do_game(){
var target_index=Math.random()*color.length;
var目标指数=数学下限(目标指数);
var目标=颜色[目标指数];
警报(目标);
当(!完成){
var guess_input=prompt(“我正在考虑这些颜色中的一种:”+“\n\n”+color.sort()+“\n\n”+“我在考虑什么颜色?”);
计数++;
警报(猜测输入);
var finished=检查_guess();
}
函数检查_guess(){
//这里我需要一个代码,以防
//游戏者写的字符串是
//不是在一系列的颜色中
如果(目标>猜测输入){
警惕(“您的颜色较低”);
返回false;
}
如果(目标<猜测\输入){
警惕(“你的颜色更高”)
返回false;
}
如果(目标===猜测输入){
myBody=document.getElementsByTagName(“正文”)[0];
myBody.style.background=target;
警报(“恭喜你,你已经猜到了,它花了你“+计数+”次”)
返回true;
}
}
}
您可以使用indexOf()方法测试用户输入的颜色是否是您的颜色之一。
例:
这可以通过使用该方法来实现 除了你的代码破坏了我的标签外,这里还有一些你可以使用的代码
var guess_input;
var target_index;
var target;
var color = ["cyan", "magenta", "green", "blue", "red"];
var finished = false;
var count = 0;
function do_game() {
var target_index = Math.random() * color.length;
var target_index = Math.floor(target_index);
var target = color[target_index];
alert(target);
while(!finished) {
var guess_input = prompt("I am thinking one of these colors: " + "\n\n" + color.sort() + "\n\n" + "What color am I thinking of?");
count++;
alert(guess_input);
var finished = check_guess();
}
function check_guess() {
//HERE I NEED A CODE IN THE CASE THAT
//THE PLAYER WRITE AN STRING THAT IS
//NOT IN THE ARRAY OF COLOURS
if(color.indexOf(guess_input) == -1){
alert("You guessed wrong chumley!");
}
if (target > guess_input) {
alert("Your color is lower");
return false;
}
if (target < guess_input) {
alert("Your color is higher")
return false;
}
if (target===guess_input) {
myBody=document.getElementsByTagName("body")[0];
myBody.style.background=target;
alert("Congratulations, you have guessed, it took you " + count + " times")
return true;
}
}
}
var-guess\u输入;
var目标指数;
var目标;
颜色变量=[“青色”、“洋红”、“绿色”、“蓝色”、“红色”];
var finished=false;
var计数=0;
函数do_game(){
var target_index=Math.random()*color.length;
var目标指数=数学下限(目标指数);
var目标=颜色[目标指数];
警报(目标);
当(!完成){
var guess_input=prompt(“我正在考虑这些颜色中的一种:”+“\n\n”+color.sort()+“\n\n”+“我在考虑什么颜色?”);
计数++;
警报(猜测输入);
var finished=检查_guess();
}
函数检查_guess(){
//这里我需要一个代码,以防
//游戏者写的字符串是
//不是在一系列的颜色中
if(color.indexOf(猜测输入)=-1){
警惕(“你猜错了,查姆利!”);
}
如果(目标>猜测输入){
警惕(“您的颜色较低”);
返回false;
}
如果(目标<猜测\输入){
警惕(“你的颜色更高”)
返回false;
}
如果(目标===猜测输入){
myBody=document.getElementsByTagName(“正文”)[0];
myBody.style.background=target;
警报(“恭喜你,你已经猜到了,它花了你“+计数+”次”)
返回true;
}
}
}
我认为你把任务复杂化了很多,汉克斯,这真的很有帮助好吧,明白了。但它只适用于一种特定的颜色(“黄色”)。我想检查孔阵列。这有意义吗?不,这不具体。indexOf的要点是它检查整个数组中的值。如果找不到值,则返回-1。不客气。如果你觉得这个答案是正确的,请务必把它标记为正确的。这将确保未来的访问者知道这个问题已经解决。
var guess_input;
var target_index;
var target;
var color = ["cyan", "magenta", "green", "blue", "red"];
var finished = false;
var count = 0;
function do_game() {
var target_index = Math.random() * color.length;
var target_index = Math.floor(target_index);
var target = color[target_index];
alert(target);
while(!finished) {
var guess_input = prompt("I am thinking one of these colors: " + "\n\n" + color.sort() + "\n\n" + "What color am I thinking of?");
count++;
alert(guess_input);
var finished = check_guess();
}
function check_guess() {
//HERE I NEED A CODE IN THE CASE THAT
//THE PLAYER WRITE AN STRING THAT IS
//NOT IN THE ARRAY OF COLOURS
if(color.indexOf(guess_input) == -1){
alert("You guessed wrong chumley!");
}
if (target > guess_input) {
alert("Your color is lower");
return false;
}
if (target < guess_input) {
alert("Your color is higher")
return false;
}
if (target===guess_input) {
myBody=document.getElementsByTagName("body")[0];
myBody.style.background=target;
alert("Congratulations, you have guessed, it took you " + count + " times")
return true;
}
}
}