const text = "Hello team, I checked my wallet balance, there is 0,0000341 USDT, I can not buy anything";
需要仅使用一个循环 for 和 charCodeAt() 来获取数字
const parseBalance = (str) => {
const zero = "0".charCodeAt(0);
const nine = "9".charCodeAt(0);
const coma = ",".charCodeAt(0);
let num = 0,
factor = 1;
for (let i = str.length - 1; i >= 0; i--) {
const char = str.charCodeAt(i);
if (char >= zero && char <= nine) {
num += (char - 48) * factor;
factor *= 10;
}
}
return num;
};
需要结果:0.0000341 我的结果是341 告诉我如何纠正写零的公式
const parseBalance = (str) => {
const zero = "0".charCodeAt(0);
const nine = "9".charCodeAt(0);
const coma = ",".charCodeAt(0);
let num = 0,
factor = 1;
for (let i = str.length - 1; i >= 0; i--) {
const char = str.charCodeAt(i);
if (char >= zero && char <= nine) {
num += (char - 48) * factor;
factor *= 10;
}
if (char === coma) {
num = num / factor;
factor = 1;
}
}
return num;
};
console.log(parseBalance('0,0000342'));