Math.ceil, Math.floor, and Math.round in JavaScript

Free Coding Questions Catalog
Boost your coding skills with our essential coding questions catalog. Take a step towards a better tech career now!

In JavaScript, the Math object provides several methods to deal with rounding numbers. These include Math.ceil(), Math.floor(), and Math.round(). Each of these functions processes numbers differently and can be used depending on the specific needs of rounding in your calculations.

1. Math.ceil()

The Math.ceil() method rounds a number upward to the nearest integer, regardless of whether the fractional component is more or less than 0.5. This method is useful when you need to ensure that the result is the smallest integer greater than or equal to the number.

Syntax:

Math.ceil(x)

Example:

console.log(Math.ceil(4.1)); // Outputs: 5 console.log(Math.ceil(4.8)); // Outputs: 5 console.log(Math.ceil(-4.1)); // Outputs: -4

In this example, even -4.1 is rounded up to -4, which is greater than -4.1.

2. Math.floor()

The Math.floor() method rounds a number downward to the nearest integer, effectively removing any fractional part. This is the method to use when you need to ensure the result is the largest integer less than or equal to the number.

Syntax:

Math.floor(x)

Example:

console.log(Math.floor(4.1)); // Outputs: 4 console.log(Math.floor(4.8)); // Outputs: 4 console.log(Math.floor(-4.1)); // Outputs: -5

In the case of negative numbers, Math.floor(-4.1) gives -5 because -5 is less than -4.1.

3. Math.round()

The Math.round() function rounds a number to the nearest integer. If the fractional component of the number is 0.5 or higher, the argument is rounded to the next higher integer. If the fractional part is less than 0.5, it is rounded down.

Syntax:

Math.round(x)

Example:

console.log(Math.round(4.1)); // Outputs: 4 console.log(Math.round(4.5)); // Outputs: 5 console.log(Math.round(4.8)); // Outputs: 5 console.log(Math.round(-4.1)); // Outputs: -4 console.log(Math.round(-4.5)); // Outputs: -4 console.log(Math.round(-4.8)); // Outputs: -5

Notice that Math.round(-4.5) rounds to -4. This is because, in JavaScript, Math.round() rounds towards the nearest even number when dealing with .5. This is known as "rounding half to even" or "bankers rounding".

Usage Tips

  • Use Math.ceil() when you need to ensure that a number is rounded up.
  • Use Math.floor() to ensure that a number is rounded down.
  • Use Math.round() for standard rounding rules to the nearest integer, keeping in mind how it handles .5.

Each of these functions is deterministic and will behave consistently with the same input, making them reliable tools for number manipulation in JavaScript programming.

TAGS
System Design Interview
CONTRIBUTOR
Design Gurus Team

GET YOUR FREE

Coding Questions Catalog

Design Gurus Newsletter - Latest from our Blog
Boost your coding skills with our essential coding questions catalog.
Take a step towards a better tech career now!
Explore Answers
Mentorship-driven approach to mastering distributed systems
How to round off in C++?
Who controls OpenAI?
Related Courses
Image
Grokking the Coding Interview: Patterns for Coding Questions
Grokking the Coding Interview Patterns in Java, Python, JS, C++, C#, and Go. The most comprehensive course with 476 Lessons.
Image
Grokking Data Structures & Algorithms for Coding Interviews
Unlock Coding Interview Success: Dive Deep into Data Structures and Algorithms.
Image
Grokking Advanced Coding Patterns for Interviews
Master advanced coding patterns for interviews: Unlock the key to acing MAANG-level coding questions.
Image
One-Stop Portal For Tech Interviews.
Copyright © 2024 Designgurus, Inc. All rights reserved.