Вместо Math.round() и toFixed(), каков альтернативный способ сохранения 3 десятичного числа, если только десятичное число содержит десятичное число.
Math.round()
toFixed()
Я хочу иметь
100 / 30 => 3.333
390 / 100 => 3.90
100 / 100 => 1
Вы можете исправить десятичные дроби и заменить последние нули на точку, если необходимо.
function round(n) { return function (v) { return v.toFixed(n).replace(/\.?0+$/, ''); }; } var array = [100 / 30, 390 / 100, 100 / 100, 100]; console.log(array.map(round(3)));
С первым нулем.
function round(n) { return function (v) { return v.toFixed(n).replace(/0+$/, '0').replace(/\.0+$/, ''); }; } var array = [100 / 30, 390 / 100, 100 / 100, 100]; console.log(array.map(round(3)));