在Typescript中,如何检查一个字符串是否为数值型。

12 浏览
0 Comments

在Typescript中,如何检查一个字符串是否为数值型。

在Typescript中,此处会显示一个错误,说明isNaN仅接受数值类型的值。

isNaN('9BX46B6A')

这会返回false,因为parseFloat(\'9BX46B6A\')的结果是9。

isNaN(parseFloat('9BX46B6A'))

我仍然可以在Visual Studio中运行并显示错误,但我希望以正确的方式处理它。

目前,我已经编写了以下修改后的函数-

static isNaNModified = (inputStr: string) => {
    var numericRepr = parseFloat(inputStr);
    return isNaN(numericRepr) || numericRepr.toString().length != inputStr.length;
}

admin 更改状态以发布 2023年5月22日
0
0 Comments
function isNumber(value?: string | number): boolean
{
   return ((value != null) &&
           (value !== '') &&
           !isNaN(Number(value.toString())));
}

:这段文字包含粗体的“123”三个数字。

0
0 Comments

把一个字符串转换成一个数字的方式是使用 Number,而不是 parseFloat

Number('1234') // 1234
Number('9BX9') // NaN

如果你喜欢简写,也可以使用一元加号运算符:

+'1234' // 1234
+'9BX9' // NaN

在检测 NaN 时要小心(操作符 ===!== 在与 NaN 一起使用时不能像预期那样工作)。使用:

 isNaN(+maybeNumber) // returns true if NaN, otherwise false

0