Reputation: 11
I'm working on a simple rock paper scissors script for code academy as part of the course; every answer I get is towards the end is the alert("rock wins!") no matter what I put in; what am I doing wrong?
var choice1 = prompt("Do you choose rock, paper or scissors?");
//-------------------------------------//
var choice2 = Math.random();
if (choice2 < 0.34) {
choice2 = "rock"
}
else if(choice2 <= 0.67) {
choice2 = "paper";
}
else {
choice2 = "scissors";
}
console.log(choice2)
//------ possible outcomes for the computer are above this comment-----------
compare = function(choice1,choice2){
//----------------------------------------
if(choice1 === "paper" & choice2 ==="paper"){
alert("The result is a tie!");}
if(choice1 === "rock" & choice2 ==="rock"){
alert("The result is a tie!");}
if(choice1 === "scissors" & choice2 ==="scissors"){
alert("The result is a tie!");}
//-possible outcomes for a tie are above this comment------------------------------
if(choice1 === "paper" & choice2 === "rock"){
alert("paper wins!");}
if(choice1 === "rock" & choice2 === "paper"){
alert("paper wins!");}
//-possible outcomes for paper & rock are above this comment------------------------
if(choice1 === "scissors" & choice2 === "rock"){
alert("rock wins!");}
if(choice1 === "rock" & choice2 === "scissors"){
alert("rock wins!");}
//-possible outcomes for a scissors & rock are above this comment--------------------
if(choice1 === "scissors" & choice2 === "paper"){
alert("scissors wins!");}
if(choice1 === "paper" & choice2 === "scissors"){
alert("scissors wins!");}
//-possible outcomes for a scissors & paper are above this comment--------------
}//<---End of compare function--//
Upvotes: 1
Views: 117
Reputation: 32511
Use &&
for "and", not &
.
if (choice1 === "paper" && choice2 === "rock") {
...
Upvotes: 2