Баг в методе toFixed?
let num = 1.123456789;
alert(+num.toFixed(4)); // Должен выводить 1.1234, но выводит 1.1235.
// Почему? Куда подевалась 4?
Ответы (2 шт):
Автор решения: Vadim
→ Ссылка
.toFixed округляет число, всё в порядке, так и должно быть
Читать Возвращаемое значение, второе предложение
Воспользуйся этим:
const toFihed=(n, cut=2)=>((parseInt(n*Math.pow(10, cut)))/Math.pow(10, cut));
console.log(toFihed(313.239935, 3));
Автор решения: IvaMuxa
→ Ссылка
let num = 1.123456789;
console.log(+num.toFixed(4)); // Должен выводить 1.1234, но выводит 1.1235.
// по правилам округление 5 производится в большую сторону
let num2 = Math.floor(num * 10000) / 10000;
//использовали округление в меньшую
console.log(num2.toFixed(4));