我即将使用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); }
解决方法
try { saveNumber(...); } catch (e) { if (e instanceof TypeError) { // ignore TypeError } else if(e instanceof RangeError) { // handle RangeError } else { // something else } }