javascript 中的捕获异常

javascript 中的捕获异常

大家是不是觉得调试javascript非常的痛苦,我也觉得。
只要能找到一点可以帮助我们调试javascript的好方法我们都要用上。
其实javascript中也可以捕获异常的,比如:


<div id='bbb' style="display:none">asdf</div>
<script>
    function a()
    ...{
        try
        ...{
            var aaa = document.getElementById('bbb');
            alert(aaa.innerText);
        }
        catch (e)
        ...{
            alert('错误' + e.message + '发生在' + e.lineNumber + '行');
        }
    }
    a();
</script>


<div id='bbb' style="display:none">asdf</div>
<script>
    function a()
    ...{
        try
        ...{
            var aaa = document.getElementById('sakdhglas');
            alert(aaa.innerText);
        }
        catch (e)
        ...{
            alert('错误' + e.message + '发生在' + e.lineNumber + '行');
        }
    }
    a();
</script>


就会报错了,js的异常e除了e.message 和 e.lineNumber之外还有一个重要的属性 e.name

e.name 错误类型,
e.message 错误的详细信息.

Error.name的六种值对应的信息:
1. EvalError:eval()的使用与定义不一致 
2. RangeError:数值越界 
3. ReferenceError:非法或不能识别的引用数值 
4. SyntaxError:发生语法解析错误 
5. TypeError:操作数类型错误 
6. URIError:URI处理函数使用不当

这样你的js代码在运行到有捕获异常的代码时,就算代码出错了,也会继续往下运行代码,不会停止,而且使用了异常对js的调试也有一定的帮助。

你可能感兴趣的:(JavaScript)