Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript JavaScript Numbers The Math Object Random Number Challenge – Two Numbers Solution

Robert Hubbard
Robert Hubbard
Full Stack JavaScript Techdegree Student 6,780 Points

Strangely a variable is not defined on the same line, even though it was used earlier on the line.

When defining randomNum, error "Uncaught ReferenceError: userLowInt is not defined" occurs. userLowInt is recognized the first time, but not the 2nd.

// Collect input from a user
var userLowInput = prompt("Give me a low number");
var userHighInput = prompt("Give me a high number");

//console.log(`1) ${userLowInput}`);

if(userLowInput && userHighInput){
  // Convert the input to a number
  const userlowInt = parseInt(userLowInput);
  const userHighInt = parseInt(userHighInput);

  //console.log(`2) ${userInt}`);

  // Use Math.random() and the user's number to generate a random number
  var randomNum = Math.floor(Math.random() * (userHighInt - userlowInt+1) ) + userLowInt;
  console.log(`3) ${randomNum}`);

  // Create a message displaying the random number
  console.log(`${randomNum} is the random number between ${userLowInt} and ${userHighInt}`);
}else {
  console.log(`You need to add a number`);

1 Answer

Steven Parker
Steven Parker
229,670 Points

The variable is declared and used the first time as "userlowInt" (with a lower case "l"), but the undefined reference is for "userLowInt" (with a capital "L").