У меня есть эта функция, она округляет все числа до 8 десятичных знаков.
exports.roundDown = function(number, decimals) {
try {
if (!exports.isNumeric(number)) {
return number;
}
decimals = decimals || 8;
if (!exports.isNumeric(decimals)) {
return number;
}
const ret = ( Math.floor( number * Math.pow(10, decimals) ) / Math.pow(10, decimals)*1);
return ret; //(ret < 0.000001) ? 0 : ret;
} catch(e) {
return number;
}
}
У меня проблема в том, что числа типа 0.00000003
округлены до 0.00000002
, вместо того, чтобы отправить действительное число (0.00000003
), другие числа работают нормально.
Есть идеи, как это исправить?