固定精度始终在 js 0.5 -> 0.5000

Fixed precision always in js 0.5 -> 0.5000

我正在尝试修正小数点后 n 位的每个小数。但是在 javascript/nodejs 中似乎无法将 0.5 转换为 0.5000。因此,我期望 0.5000 的测试用例失败了。

知道如何在 nodejs/javascript 中执行此操作吗?

使用number原型方法toFixed

var num = 5.0;
var n = num.toFixed(4);
console.log(n) //output: 5.000

正如其他人所说 Number.prototype.toFixed() 应该适合您。我试了一下,效果很好。

function plusMinus(arr) {
let length = arr.length;
let o = arr.reduce((acc,cv)=>{
    if(cv > 0){
        acc.pos++;  
     }
    else if(cv<0){
        acc.neg++;
    }
    else{
        acc.zero++;
    }
    return acc;
},{pos:0,neg:0,zero:0});
    console.log((o.pos/length).toFixed(4));
    console.log((o.neg/length).toFixed(4));
    console.log((o.zero/length).toFixed(4));
}
plusMinus([-4,3,-9,0,4,1]);