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 trialVishal Gaglani
7,707 PointsMath.round and Math.floor are returning the same values. What am I doing wrong?
The return value is 38 for both alerts. I don't know why.
var temperature = 37.5;
temperature = Math.round (temperature);
alert (temperature);
temperature = Math.floor (temperature);
alert (temperature)
<!DOCTYPE HTML>
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8">
<title>JavaScript Basics</title>
</head>
<body>
<script src="script.js"></script>
</body>
</html>
2 Answers
Ken Alger
Treehouse TeacherVishal;
The issue you are having is that you are reassigning a value to the temperature
variable when you call Math.round()
on it.
var temperature = 37.5;
temperature = Math.round (temperature); // The temperature variable is now equal to the rounded value, or 38
alert (temperature); // displays 38
temperature = Math.floor (temperature); // The temperature variable is being asked to "floor" the number 38, not the original 37.5
alert (temperature); // displays 38
As Sonya Trachsel shows, you can just do the alerts, you don't need to reassign a value to temperature
.
Post back if you are still stuck.
Happy coding,
Ken
Sonya Trachsel
13,674 PointsI just did it in one line and it returned them correctly. Try this:
var temperature = 37.5; alert(Math.round(temperature)); alert(Math.floor(temperature));