123 "12.3" => 12.3 "12.300" => -6ren">
gpt4 book ai didi

javascript - 如果字符串是确切数字,如何将字符串转换为 float ,而不仅仅是在javascript中以数字开头

转载 作者:行者123 更新时间:2023-12-04 09:36:21 32 4
gpt4 key购买 nike

我正在尝试制作检查字符串的函数。如果字符串是数字,则将其转换为浮点数。否则,它将保持原样。
例如:我有这些测试字符串:

"123" => 123
"12.3" => 12.3
"12.300" => 12.3
"test123" => "test123"
"123test" => "123test"
"12.3test" => "12.3test"
"123@123.123" => "123@123.123"
我试图按照下面所写的方式自行制作,但有时它会通过删除字母将实际字符串转换为数字并保留字符串数字的第一部分
let mynumber="123test@gmail.com"
mynumber = parseFloat(mynumber) ? parseFloat(mynumber) : mynumber;
//output: 123

最佳答案

您可以使用 Number() 将字符串转换为数字并检查它是否为NaN。

function check(num){
return isNaN(Number(num)) ? num : Number(num);
}

let mynumber="123test@gmail.com"
let mynumber2 = "34234";
let mynumber3 = "3234.234";

let result = check(mynumber);
let result2 = check(mynumber2);
let result3 = check(mynumber3);


console.log(result, typeof result);
console.log(result2, typeof result2);
console.log(result3, typeof result3);

关于javascript - 如果字符串是确切数字,如何将字符串转换为 float ,而不仅仅是在javascript中以数字开头,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62568464/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com