Как округлить число до 2 знаков js

Аватар пользователя Ivan Gagarinov
Ivan Gagarinov
30 июня 2022

Для округления десятичных чисел дофиксированного количества знаков после запятой в JS используется метод toFixed(). В качестве параметра метод принимает количество знаков, до которого нужно округлить. Если в исходном числе будет меньше знаков, то недостающие знаки заменятся нулями.

Примеры:

const pi = 3.14159265359;
console.log(pi.toFixed(2)); // => 3.14
const num = 4;
console.log(num.toFixed(2)); // => 4.00
5 0
Аватар пользователя Sergey Krivtsov
Sergey Krivtsov
22 декабря 2022

Хмм. Думаю тут есть неточность (или для js и так сойдет ?). В вопросе округление числа, но метод toFixed возвращает строку, как быть в таком случае, typescript неоценит такое округление.

1 0
Аватар пользователя Ринат Камалитдинов
Ринат Камалитдинов
18 октября 2022

Для округления десятичных чисел до фиксированного количества знаков после запятой в JavaScript используется метод toFixed(). В качестве параметра метод принимает количество знаков, до которого нужно округлить. Если в исходном числе будет меньше знаков, то недостающие знаки заменятся нулями.

Примеры:

const pi = 3.14159265359;
console.log(pi.toFixed(2)); // => 3.14

const num = 4;
console.log(num.toFixed(2)); // => 4.00
0 0
Аватар пользователя Саганыш Саганыш
Саганыш Саганыш
31 августа 2023

Спасибо за пример, у меня задача была получить два случайных числа в диапазоне и округлить до введёного знака после запятой

function getRandomInt(min, max, znakPosleZpt){ let q=Math.random() * (max - min) + min; return q.toFixed(znakPosleZpt) } console.log(getRandomInt(12,50,5))

0 0
Аватар пользователя Юра Ефремов
Юра Ефремов
24 июля 2023

const pi = 3.14159265359; console.log(typeof Number(pi.toFixed(2)); // => "number"

0 0
Аватар пользователя Андрей
Андрей
26 февраля 2024

Я использовал Math.round, потому что с .toFixed далее по коду были проблемы. Полученное значение нельзя было добавить к общей сумме и собственно .toFixed ругался.

Вот такое число записывалось в переменную при totalKm = 12: 03.60. Видимо этот 0 впереди ломает работу .toFixed

Пример:

totalKm = 12;

Math.round(totalKm * 0.3 * 100) / 100;

Если использовать personalCarCosts = (totalKm * 0.3).toFixed(2); ниже по коду получал ошибку

totalCosts = totalMealsCost + totalTravelCosts + totalAccommodationCosts + totalAdditionalCosts + personalCarCosts;

$('#total_costs').val(totalCosts.toFixed(2));

Uncaught TypeError: totalCosts.toFixed is not a function

С Math.round проходит без проблем.

0 0
Познакомьтесь с основами JavaScript бесплатно