Сообщение от antonM
|
В моей задаче есть два условия:
1. количество десятичных знаков наперед неизвестно
2. должно возвращаться число (не строка)
|
Печально. Считай кол-во знаков базового числа и по нему округляй.
Xотя, в принципе, погрешность, если вычисления не идут подряд, накапливаться не будет, а потому достаточно округлять до десяти знаков - лишнее отбросится:
(function(a){
window.alert = function(){
a(Array.prototype.slice.call(arguments).join('\n'))
}
}(window.alert))
Number.prototype.round = function(p){
return +this.toFixed(p)
}
num = 0.1 + 0.2;
alert(
num,
num.round(10)
)