Я думаю, что предложение @ trincot лучше, чтобы избежать преобразования десятичных знаков, таких как -0.48.toFixed(2)
, в положительные. Мне понадобилось время, чтобы понять регулярное выражение. Просто небольшое предостережение: из-за приоритета оператора отрицательные числа остаются отрицательными, если toFixed заключен в квадратные скобки. Некоторые примеры здесь:
-0.001.toFixed(2).replace(/^-0$/, "0")
//0 '0'
console.log((-0.48).toFixed(0).replace(/^-0$/, '0')); Correct
//-0 '0'
console.log((-0.48).toFixed(2).replace(/^-0$/, '0')); Correct
//-0.48 '-0.48'
console.log(-0.48.toFixed(0).replace(/^-0$/, '0'));
//0 '0'
console.log(-0.48.toFixed(2).replace(/^-0$/, '0'));
//-0.48 '-0.48'
Также посмотрите примеры здесь - toFixed ()