Javascript 为什么';";画;增加+;我的石头,布,剪刀,蜥蜴,斯波克?

Javascript 为什么';";画;增加+;我的石头,布,剪刀,蜥蜴,斯波克?,javascript,html,Javascript,Html,除平局计数器外,计数赢、输和平局数的计数器正在工作。我已经找了一个问题大约一个小时了,但我还是不知道出了什么问题。。这是我的完整代码: HTML: 我本想做一把小提琴,但它不能正常工作 从快速查看,我猜这是因为如果是平局,您将调用return,因此无法访问任何后续代码 if (myRoll == opponentRoll) { document.getElementById("outcome").innerHTML="It's a draw!"; return; //<--- h

除平局计数器外,计数赢、输和平局数的计数器正在工作。我已经找了一个问题大约一个小时了,但我还是不知道出了什么问题。。这是我的完整代码:

HTML:


我本想做一把小提琴,但它不能正常工作

快速查看,我猜这是因为如果是平局,您将调用return,因此无法访问任何后续代码

if (myRoll == opponentRoll) {
  document.getElementById("outcome").innerHTML="It's a draw!";
  return;  //<--- here
}
if(myRoll==opponentRoll){
document.getElementById(“结果”).innerHTML=“这是一个平局!”;

return;//从快速查看,我猜这是因为如果是平局,您将调用return,因此无法访问后面的任何代码

if (myRoll == opponentRoll) {
  document.getElementById("outcome").innerHTML="It's a draw!";
  return;  //<--- here
}
if(myRoll==opponentRoll){
document.getElementById(“结果”).innerHTML=“这是一个平局!”;
return;//由于此部分:

if (myRoll == opponentRoll) {
    document.getElementById("outcome").innerHTML="It's a draw!";
    return;
}
return
语句意味着函数的执行在该点结束,因此
draw
永远不会增加。可能最容易的方法是取出该行,并将
switch
语句作为
else
块的一部分

通过一些其他小改动来减少如下代码:

if (myRoll == opponentRoll) {
    document.getElementById("outcome").innerHTML = "It's a draw!";
} else {
    switch (myRoll) {

        case ROCK:
            document.getElementById("outcome").innerHTML = (opponentRoll == LIZARD || opponentRoll == SCISSORS ? 'You win!' : 'You lose!');
            break;

        case PAPER:
            document.getElementById("outcome").innerHTML = (opponentRoll == ROCK || opponentRoll == SPOCK ? 'You win!' : 'You lose!');
            break;

        case SCISSORS:
            document.getElementById("outcome").innerHTML = (opponentRoll == PAPER || opponentRoll == LIZARD ? 'You win!' : 'You lose!');
            break;

        case LIZARD:
            document.getElementById("outcome").innerHTML = (opponentRoll == SPOCK || opponentRoll == PAPER ? 'You win!' : 'You lose!');
            break;

        case SPOCK:
            document.getElementById("outcome").innerHTML = (opponentRoll == SCISSORS || opponentRoll == ROCK ? 'You win!' : 'You lose!');
            break;

    } //end of switch(myRoll)
}
由于这一部分:

if (myRoll == opponentRoll) {
    document.getElementById("outcome").innerHTML="It's a draw!";
    return;
}
return
语句意味着函数的执行在该点结束,因此
draw
永远不会增加。可能最容易的方法是取出该行,并将
switch
语句作为
else
块的一部分

通过一些其他小改动来减少如下代码:

if (myRoll == opponentRoll) {
    document.getElementById("outcome").innerHTML = "It's a draw!";
} else {
    switch (myRoll) {

        case ROCK:
            document.getElementById("outcome").innerHTML = (opponentRoll == LIZARD || opponentRoll == SCISSORS ? 'You win!' : 'You lose!');
            break;

        case PAPER:
            document.getElementById("outcome").innerHTML = (opponentRoll == ROCK || opponentRoll == SPOCK ? 'You win!' : 'You lose!');
            break;

        case SCISSORS:
            document.getElementById("outcome").innerHTML = (opponentRoll == PAPER || opponentRoll == LIZARD ? 'You win!' : 'You lose!');
            break;

        case LIZARD:
            document.getElementById("outcome").innerHTML = (opponentRoll == SPOCK || opponentRoll == PAPER ? 'You win!' : 'You lose!');
            break;

        case SPOCK:
            document.getElementById("outcome").innerHTML = (opponentRoll == SCISSORS || opponentRoll == ROCK ? 'You win!' : 'You lose!');
            break;

    } //end of switch(myRoll)
}

您将返回以跳出抽签案例。这将跳过所有其他内容。将其更改为“如果/其他”块(其他为您的赢/输条件开关)。

您将返回以跳出抽签案例。这将跳过所有其他内容。将其更改为“如果/其他”块(其他为您的赢/输条件开关).

我需要返回那里,否则它会将平局算作损失。即使我删除它也不起作用。我需要返回那里,否则它会将平局算作损失。即使我删除它也不起作用。不确定代码会是什么样子?你能展示它吗?Nvm我想出来了:)thx tho接受了你的答案,也可能会进行更改以减少代码我一直在想,“document.getElementById”是否有类似的语法但是对于类?@DuploW有,但有一些关键的区别。1.注意函数名是复数的-元素,而不是元素。2.它返回一个元素集合,因此您不能直接设置属性-您必须迭代该集合。3.它由DOM支持,因此会动态更新;如果您检索所有元素的集合,则元素,然后删除其中一个元素,你的集合将自动更新。不确定代码会是什么样子吗?你能展示一下吗?Nvm我想出来了:)thx tho接受了你的答案,并且会做出更改以减少代码。另外,我一直在想“document.getElementById”是否有类似的语法但是对于类?@DuploW有,但有一些关键的区别。1.注意函数名是复数的-元素,而不是元素。2.它返回一个元素集合,因此您不能直接设置属性-您必须迭代该集合。3.它由DOM支持,因此会动态更新;如果您检索所有元素的集合,则元素,然后删除其中一个元素,您的集合将自动更新。