他们有什么办法可以在使用 parseInt 时**不** 舍入数字吗?

Is their any way I can **not** round off the number while using parseInt?

let display = '5+10.10';
let numbers = display.match(/(\d+\.?\d*|\.\d+)/g).map(a => parseInt(a));
console.log(numbers)//returns [5, 10]

当我不使用时 parseInt:


let display = '5+10.10';
let numbers = display.match(/(\d+\.?\d*|\.\d+)/g);
console.log(numbers)//returns ["5", "10.10"]

我需要数组项作为带小数的数字而不是字符串。

parseInt 转换为整数。你想要 parseFloat :

let display = '5+10.10';
let numbers = display.match(/(\d+\.?\d*|\.\d+)/g).map(a => parseFloat(a));
console.log(numbers)

let numbers = display.match(/(\d+\.?\d*|\.\d+)/g).map(Number);

您可以在此处使用更广泛的数字,因为根据定义,整数永远不会有小数部分。