edd*_*iec 9 javascript try-catch
我即将使用RangeError抛出异常,并想检查我是否正确使用它以及如何最好地捕获它.
我有一个函数可以抛出RangeError或类似这样的TypeError
function saveNumber(val) {
// Only accept numbers.
if (typeof val !== 'number') {
throw new TypeError();
}
// Error if the number is outside of the range.
if (val > max || val < min) {
throw new RangeError();
}
db.save(val);
}
Run Code Online (Sandbox Code Playgroud)
我想调用它并且只处理RangeError.最好的方法是什么?
qwe*_*ynl 10
try {
saveNumber(...);
} catch (e) {
if (e instanceof TypeError) {
// ignore TypeError
}
else if(e instanceof RangeError) {
// handle RangeError
}
else {
// something else
}
}
Run Code Online (Sandbox Code Playgroud)