Math.floor(): округление вниз, включая отрицательные числа
Math.floor возвращает наибольшее целое число, которое не больше исходного значения.
Назначение
Math.floor возвращает наибольшее целое число, которое не больше исходного значения.
Как это работает
Направление округления — к минус бесконечности. Поэтому floor(-1.2) равно -2, а не -1. Это отличается от удаления дробной части через Math.trunc.
Пример
console.assert(Math.floor(1.8)===1);
console.assert(Math.floor(-1.2)===-2);
console.assert(Math.trunc(-1.2)===-1);
Что должно получиться
Положительная дробь переходит к меньшему целому, отрицательная — к ещё более отрицательному. Разница с trunc видна на отрицательном аргументе.
Граница применения и частая ошибка
Не описывайте floor как простое отбрасывание дробной части для любого числа. На отрицательных значениях такая формулировка приводит к неверным индексам и расчётам.
Самостоятельная проверка
Сравните положительные и отрицательные дроби, а затем floor и trunc. Для разбиения списка на страницы отдельно проверьте нулевое число элементов.
JavaScript в песочнице этого сайта не выполняется. Перенесите пример в отдельный учебный файл. Сначала проверьте исходный результат, затем измените входные данные; ошибка проверки означает, что результат отличается от ожидаемого.