Greetings,
I’m working this project and am trying to understand every bit of this code. I completed the project and it seems to work fine but to better understand each part I deconstructed the code until I have the bare minimum to allow the program to run. Surprisingly, the code still ran fine without declaring the variable winner. Why is this so? How does the compareGuesser function tie with the updateScore function without declaring a variable such as winner? See a copy of my code below.
let humanScore = 0;
let computerScore = 0;
let currentRoundNumber = 1;
// Write your code below:
const generateTarget=() => {
return Math.floor(Math.random()*10)
};
let humanGuess = 0;
let computerGuess = 0;
let targetNumber = generateTarget();
const compareGuesses =(humanGuess, computerGuess, targetNumber) => {
let humanguessDifference = Math.abs( humanGuess - targetNumber);
let computerguessDifference = Math.abs( computerGuess - targetNumber);
if ( humanguessDifference <= computerguessDifference) {
return true
} else {
return false
}
};
/let winner = compareGuesses(humanGuess, computerGuess, targetNumber) ? ‘human’ : ‘computer’;/
/*if (compareGuesses(humanGuess, computerGuess, targetNumber)){
let winner = ‘human’
} else {
let winner = ‘computer’
}; */
const updateScore = (winner) => {
if(winner === ‘human’){
return humanScore += 1;
}
if (winner === ‘computer’) {
return computerScore += 1;
}
};
const advanceRound = () => {
return currentRoundNumber += 1;
};