我的网页设计课程和工作任务;我们得到了一个基本代码,我们需要修改它来做更多。一旦我添加了if,else if语句,javascript就会停止工作。我无法弄清楚我哪里出错了。如果有人能引导我朝着正确的方向前进,我真的很感激。 这是原始代码(注释我们需要做的事情):
<!DOCTYPE html>
<!-- Finish the logic of the Rock Paper Scissors game below.
See the comments for instructions. -->
<html>
<head>
<title>RPS</title>
<script>
function rps() {
userChoice = prompt("Rock, paper or scissors?");
userPick.innerHTML = userChoice;
computerChoice = Math.random();
if (computerChoice < 0.34) {
computerChoice = "rock";
} else if (computerChoice < 0.67) {
computerChoice = "paper";
} else {
computerChoice = "scissors";
}
computerPick.innerHTML = computerChoice;
result = compare(userChoice, computerChoice);
if (result == 1) {
// set the outcome entity to say that "Player Wins!"
// also increment the user's score.
} else if (result == -1) {
// set the outcome entity to say that "Computer Wins!"
// also increment the computer's score.
} else {
// set the outcome entity to say "Tie"
}
}
function compare(choice1, choice2) {
// return 0 if choices are equal,
// 1 if choice1 wins,
// -1 if choice2 wins
}
</script>
</head>
<body>
<h2>RockPaperScissors</h2>
<p id="outcome">-</p> <b> computer picks: </b>
<p id="computerPick">-</p> <b> player picks: </b>
<p id="userPick">-</p>
<!-- create p blocks to store the computer's score (number of wins)
and the user's score. These will have to be modified by the rps function
-->
<button type="button" onclick="rps()">Go</button>
</body>
</html>
这是我改变函数比较方法的方法:
function compare(choice1, choice2) {
// return 0 if choices are equal,
// 1 if choice1 wins,
// -1 if choice2 wins
if (choice1 == "paper" && choice2 == "rock" ||
choice1 == "rock" && choice2 == "scissors" ||
choice1 == "scissors" && choice2 == "paper") {
return == 1;
}
else if (choice1 == "paper" && choice2 == "scissors" ||
choice1 == "rock" && choice2 == "paper" ||
choice1 == "scissors" && choice2 == "rock") {
return == -1;
}
else {
return == 0;
}
}
答案 0 :(得分:1)
从您的退货中删除==。它们应该就像......
返回1;
==用于比较。
答案 1 :(得分:0)
将compare
功能更改为
function compare(choice1, choice2) {
// return 0 if choices are equal,
// 1 if choice1 wins,
// -1 if choice2 wins
if (choice1=="paper" && choice2=="rock"||choice1=="rock"
&& choice2=="scissors"||choice1=="scissors" && choice2=="paper"){
return 1;}
else if (choice1=="paper" &&
choice2=="scissors"||choice1=="rock" && choice2=="paper"||choice1=="scissors" &&
choice2=="rock"){
return -1;}
else {
return 0;}
}
答案 2 :(得分:-1)
return 1
不
return == 1
返回是关键字而不是变量。 =是赋值运算符,它将运算符右侧的值放入左侧的变量中。并且==是相等运算符。