Hi! I have some experience with Python but Javascript is completely new to me. Here is my solution for Race Day:
// Randomly assigns a race number between 1 and 1000
let raceNumber = Math.floor(Math.random() * 1000);
// Whether or not runner registrered early
let earlyReg = false;
// Assigns runner age
let runnerAge = 19;
// Assigns racetime an empty string to be defined later depending on age and registration
let raceTime = "";
// Returns the race time depending on age and registration
if (earlyReg && runnerAge > 18) {
raceTime = "9:30 am";
} else if (!earlyReg && runnerAge > 18) {
raceTime = "11:00 am";
} else if (runnerAge < 18) {
raceTime = "12:30 pm";
}
// Returns a message with a runners time and number depending on when they registered and their age
if (runnerAge === 18) {
console.log("See the registration desk");
} else {
let numberMessage = earlyReg ? raceNumber + 1000 : raceNumber;
console.log(`Your race time is ${raceTime}. Your number is ${numberMessage}`);
}
My question is whether or not it would hurt readability to change the last if…else block to a ternary operator like this:
runnerAge === 18
? console.log("See the registration desk")
: console.log(
`Your race time is ${raceTime}. Your number is ${
earlyReg ? raceNumber + 1000 : raceNumber
}.`
);
I personally feel like the second one is more concise and still easy to understand, but I wanted to make sure.