Как упростить округление в JavaScript? Я хочу, чтобы я мог сделать это более элегантно объектно-ориентированным образом. Метод toFixed работает хорошо, но не имеет обратного округления, а также возвращает строку, а не число.Добавить метод округления в Number.prototype в JavaScript
pi.toFixed(2).valueOf();
// 3.14
Как это округление немного клубка, потому что я должен использовать:
pi = Math.round(pi * 100)/100;
// 3.14
Было бы гораздо лучше, вместо того, чтобы просто придерживаться метода до конца переменной, такой as:
pi.round(2);
// 3.1r
две вещи не являются эквивалентными. Вы ожидаете, что pi.round (2) будет * мутировать * номер? Это невозможно, поскольку числа неизменны. – Sacho
Что не так с 'pi.toFixed (2)'? – Barmar
Mutability: Все, что я могу сделать, это кивать и улыбаться, делая вид, что знает, что это значит. Для того, что стоит, [Wikipedia] (https://en.wikipedia.org/wiki/Immutable_object#JavaScript) говорит: «Пользовательские классы, как правило, изменяемы. Чтобы имитировать неизменность в классе, нужно установить неизменные свойства прототипу объект «. – Iktys