我有一个字符串
let input = "1.0 2.5 3.0 4.5 5.0 -5.5 4.5 3.0 -2.0 -1.0 1.0 2.0 5.0";
为了得到一个数字数组,我尝试了以下操作:
let output= input.split(" ").map(Number);
现在我得到了一个数字数组。然而,使用以下代码,我未能将所有数字格式化为一位小数:
for (i = 0; i < output.length; i++) {
output[i].toFixed(1);
}
let input = "1.0 2.5 3.0 4.5 5.0 -5.5 4.5 3.0 -2.0 -1.0 1.0 2.0 5.0";
let output = input.split(" ").map(Number);
console.log(output); //got a number array
for (i = 0; i < output.length; i++) {
output[i].toFixed(2);
}
console.log(output); //try to get all numbers with one decimal place,but failed
有人知道怎么做吗?提前谢谢。
您需要一个赋值或映射新值。
let input = "1.0 2.5 3.0 4.5 5.0 -5.5 4.5 3.0 -2.0 -1.0 1.0 2.0 5.0";
let output= input.split(" ").map(Number).map(v => v.toFixed(1));
console.log(output);
正如Terry在评论中提到的,您可以将最后两个映射合并为一个。
let input = "1.0 2.5 3.0 4.5 5.0 -5.5 4.5 3.0 -2.0 -1.0 1.0 2.0 5.0";
let output= input.split(" ").map(v => Number(v).toFixed(1));
console.log(output);