Math.ceil() в JavaScript

Math.ceil() округляет число вверх до ближайшего целого.

console.log(Math.ceil(4.2));
console.log(Math.ceil(4.8));

Результат:

5
5

Метод полезен, когда даже небольшой остаток требует еще одну целую единицу.

Что делает Math.ceil()

Math.ceil() возвращает ближайшее целое число, которое больше или равно исходному числу.

let value = 7.1;
let result = Math.ceil(value);

console.log(result);

Результат:

8

Если число уже целое, метод вернет его без изменений.

console.log(Math.ceil(10));

Результат:

10

Синтаксис

Math.ceil(number)

Метод принимает одно значение - число, которое нужно округлить вверх.

console.log(Math.ceil(10.01));
console.log(Math.ceil(10.99));

Результат:

11
11

Math.ceil() возвращает новое значение и не меняет исходную переменную.

let price = 19.1;
let roundedPrice = Math.ceil(price);

console.log(price);
console.log(roundedPrice);

Результат:

19.1
20

Положительные числа

С положительными числами Math.ceil() всегда двигает дробное число к следующему целому.

console.log(Math.ceil(3.1));
console.log(Math.ceil(3.5));
console.log(Math.ceil(3.9));

Результат:

4
4
4

Это отличается от Math.round(). Метод Math.round() округляет до ближайшего целого, а Math.ceil() всегда округляет вверх.

Страницы и группы

Частый пример - количество страниц.

Если на одной странице помещается 10 товаров, а всего товаров 23, нужно 3 страницы.

let products = 23;
let perPage = 10;

let pages = Math.ceil(products / perPage);

console.log(pages);

Результат:

3

Две страницы вместят только 20 товаров, поэтому остаток требует еще одну страницу.

По той же логике можно считать количество коробок, групп или поездок.

let items = 41;
let boxSize = 8;

let boxes = Math.ceil(items / boxSize);

console.log(boxes);

Результат:

6

Отрицательные числа

С отрицательными числами Math.ceil() тоже округляет вверх по числовой оси.

console.log(Math.ceil(-4.2));
console.log(Math.ceil(-4.8));

Результат:

-4
-4

Для отрицательных чисел “вверх” - это ближе к нулю. Поэтому результат может отличаться от Math.floor().

console.log(Math.ceil(-4.8));
console.log(Math.floor(-4.8));

Результат:

-4
-5

Итого

Math.ceil() используют, когда число нужно округлить вверх.

  • Math.ceil(4.2) вернет 5.
  • Math.ceil(4.8) тоже вернет 5.
  • Если число уже целое, оно не изменится.
  • Метод удобен для подсчета страниц, коробок, групп и других случаев, где остаток требует еще одну единицу.
  • Для отрицательных чисел Math.ceil() округляет вверх по числовой оси.