gpt4 book ai didi

javascript - 将字符串转换为数字而不转换字母

转载 作者:太空宇宙 更新时间:2023-11-04 03:00:35 27 4
gpt4 key购买 nike

我正在尝试将字符串转换为数字,但我只希望它适用于实际数字,而不是在存在 e+121.12(十进制)、以 0 开头或为 Infinity 时更改结果。

现在,我有一个辅助函数来检查字符串是否包含一些检查,但是我不知道所有破坏我想要的系统的方法。

// returns false if unable to get number, else the number
function getNumber(string) {
string = string.toLowerCase();
if (string.charAt(0) === '0') return false; // starts with '0'
string = Number(string);
if (string !== string) return false; // it failed to convert
if (string % 1 !== 0) return false; // is a decimal
return string;
}

最佳答案

您可以尝试以下操作:

function getNumber(string) {
const num = (/^\d+$/.test(string) && string.charAt(0) !== '0') ? Number(string) : false;
return num;
}

console.log(getNumber('5678')); // 5678
console.log(getNumber('e456.78')); // false
console.log(getNumber('045678')); // false
console.log(getNumber('fghjkl')); // false

希望这有帮助:)

关于javascript - 将字符串转换为数字而不转换字母,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/57659061/

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