将javascript数组中的所有数字转换为函数中的小数点后2位



我需要创建一个函数,使数组中所有小数点后2位的数字成为

function convert(radi){
var i = 0;
while(radi !== null) {
radi += radi[i].toFixed(2);
}
return  radi;
}
convert(radi);
console.log(radi);
convert(areas);
console.log(areas);

*

您可以使用map函数在数组中迭代,并使用toFixed设置精度,toFixed返回字符串,因此您需要用Number包装toFixed函数。

radi.map( item => Number(item.toFixed(2)))

假设一个起始数组:

arr = [0.445 , 1.54645 , 5.432];

使用以下函数,该函数对空数组使用for循环和push,而不是while循环和+=(加法赋值)。+=可能没有做你认为它会做的事情。有关添加分配功能的详细信息,请参阅添加分配

function convert(arr){
newArr =[];
for(i=0; i<arr.length; i++){
newArr.push(arr[i].toFixed(2));
}
return newArr;
}

用法:

arr = convert(arr);
radi.map(e=>e.toFixed(2))

redi是任意一组数字

我建议使用前面答案中描述的map方法。如果你想修改你提出的函数,这里有一个很好的解决方案。

function convert(radi){
var i = 0;
while(radi[i]) {
radi[i] = radi[i].toFixed(2);
i++;
}
return  radi;
}
var radi = [1, 3.3454, 87.2];
radi = convert(radi);
console.log(radi);

最新更新