打破try / throw / catch

时间:2016-02-02 11:03:47

标签: javascript try-catch throw

我正在尝试使用try / throw / catch来显示在console.log()中以正确方式格式化的错误。如果我使用此代码:

var add = function ( a, b ) {
    try {
        if ( typeof a !== 'number' || typeof b !== 'number' ) throw {
            name: 'TypeError!\n',
            message: 'You must enter two numbers'
        }
    } catch ( e ) {
        console.log( e.name + e.message );
    }
    return a + b;
}
console.log( add( 3, undefined ) );

我的控制台显示:

TypeError!
You must use two numbers as parameters
NaN

如何破坏函数以仅在控制台日志中获取错误而不是结果,在这种情况下是NaN?我尝试在控制台登录catch后使用break语句,但控制台说:

Uncaught SyntaxError: Illegal break statement

1 个答案:

答案 0 :(得分:0)

您只能在循环中使用defaultdict,您应该使用return从函数返回。您也可以选择不捕获异常,并让它回流给调用者。

示例:

break