Bar*_*t S 4 javascript parsefloat
在我正在处理的代码库中,我遇到了这样的代码:
try {
price = parseFloat(price);
} catch (err) {
console.log(err);
}
Run Code Online (Sandbox Code Playgroud)
我知道在大多数情况下,price无法将其变成数字,它只会获得相应的价值NaN.我的问题是:是否会出现错误,使try-catch-construction成为必要?
是否存在会引发错误的情况,使得try-catch-construction必要?
是.除了引用错误(因为price没有声明)或者parseFloat被不是函数之类的东西覆盖,内置parseFloat函数也会抛出异常.
但是,传入字符串时它确实不会抛出错误.它只会在尝试将参数转换为字符串失败时抛出异常.其中的例子包括:
[Symbol.toPrimitive],.valueOf或.toString方法