Currently learning web development, after completing HTML/CSS I'm now in JavaScript fundamentals (boy is it way tougher than the first two!), and in this practice project I'm looking to grab the absolute values of userGuess - secretActualNumber and computerGuess - secretActualNumber, and then compare them to see which one is closer to the secret number. So far I've tried this.
const compareGuesses = (userGuess , computerGuess, secretActualNumber) => {
Math.abs(userGuess-secretActualNumber);
Math.abs(computerGuess-secretActualNumber);
}
In order to compare both of those, I was thinking I need to implement the "difference" function of JS. But I've been struggling to make use that, to compare these two items, and to then result in a true/false. (true being if the user is closer, and false if the computer is closer).
Let me know what you think!
Thanks in advance
2 Answers 2
Save results to variables and then compare them:
const compareGuesses = (userGuess, computerGuess, secretActualNumber) => {
var userDiff = Math.abs(userGuess-secretActualNumber);
var computerDiff = Math.abs(computerGuess-secretActualNumber);
return userDiff <= computerDiff;
}
Comments
This will return true only if the user is closer.
const compareGuesses = (userGuess , computerGuess, secretActualNumber) =>
Math.abs(userGuess-secretActualNumber) < Math.abs(computerGuess-secretActualNumber);
You'll want to use <= instead of < if you want it to return true when equal.
const compareGuesses = (userGuess , computerGuess, secretActualNumber) =>
Math.abs(userGuess-secretActualNumber) <= Math.abs(computerGuess-secretActualNumber);
2 Comments
Math.abs(userGuess-secretActualNumber) < Math.abs(computerGuess-secretActualNumber) to Math.abs(userGuess-secretActualNumber) <= Math.abs(computerGuess-secretActualNumber)