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 trialella blue
2,252 Pointserror...... var chance = Math.random(0, 20);
var chance = Math.random(0, 20);
<!DOCTYPE html>
<html lang="en">
<head>
<title>JavaScript Foundations: The Math Object</title>
<link rel="stylesheet" href="core.css">
<script>
var diameter = 5.75,
a = 17,
b = 42,
c = 1337,
ageIfILiveToYear2100 = (new Date(2100, 0, 1) - new Date(1995, 5, 16, 7, 20)) / (1000 * 60 * 60 * 24 * 365.242);
var circumference = diameter * Math.PI;
var chance = Math.random(0, 20);
/*
The JavaScript Math object has the following
constant (among others):
Math.PI
Approximately 3.14159. Pi (π) is used
to determine the circumference of a circle
given its diameter by multiplying the diameter
by π. Geometery refresher: the circumference
of a circle is the distance around the outside
edge. The diameter is the width of the circle.
The JavaScript Math object also has the following
methods (among others):
Math.random()
Returns a random number between 0 and 1
Math.max(a, b, ...)
Returns the largest value of the passed
arguments
Math.floor(a)
Returns the value of a number rounded down to
the nearest integer
*/
</script>
</head>
<body>
<h1>JavaScript Foundations</h1>
<h2>The Math Object</h2>
<script src="viewer.js"></script>
</body>
</html>
3 Answers
mikes02
Courses Plus Student 16,968 PointsMath.random returns a random number between 0 and 1. So in order to go between 0 and 20 you would have to do:
var chance = Math.floor((Math.random() * 20) + 0); // random number between 0-20
var chance = Math.floor((Math.random() * 20) + 1);; // random number between 1-20
Ken Alger
Treehouse TeacherElla;
The method Math.random()
does not accept arguments such as 0, 20
.
Read more about the function here.
If you are trying to generate a random number between 0 and 20, try:
Math.floor(Math.random() * 20) + 0;
The Math.floor(x)
function returns the largest integer less than or equal to a number x
. You would also multiply the random number by the upper limit of your target range and then add your lower target range to it. Obviously if you are going from 0 you don't need to add the zero, but if you wanted 1 to 20, you would replace the 0 in the code with a 1.
Happy coding,
Ken
ella blue
2,252 Pointsthanks everyone! :)