try-catch && throw && finally

   要会调试程序,先得看懂一些错误名词,不然显示错误看不懂就尴尬了:

try{
    //可能发生错误的代码
}catch(err){
    //只有发生错误时才执行的代码
}finally{
    //无论是否出错,都要执行的代码
}

  错误类型有(图片引自菜鸟教程):

 接下来实列告诉大家如何用try-catch调试js

<script>
    function test() {
        try {
            alerrt("故意写错");
            //出错后直接跳转到catch,后面代码不执行
            console.log('还会继续执行吗');

        } catch (error) {
            console.log('有错' + error);

        }
        console.log('继续执行了try-catch后面的东西');

    }
    test();
</script>

 结果是

  

  结论

  •             我们可以用try-catch语句来调试程序,觉的哪一块可能有问题就放在来找出错误
  •               如果try语句中有错,将不会执行后面的语句,直接跳转到catch语句处理错误
  •               try语句没问题,自然不会去执行catch语句
  •               try-catch完了之后,try-catch后面的其他还会继续执行

throw :创建自定义错误,根据内容返回自定义的错误提示

finally 在try-catch之后,无论是否检测到了错误,都会执行finally语句

    var input = document.querySelector('input');
    input.addEventListener('blur', function() {
        var val = input.value;
        try {
            if (val === '') throw '值是空的';
            if (val < 0) throw '值是负数';
        } catch (error) {
            console.log(error);
        } finally {
            input.value = '';
        }
    })

这里意思就是如果输入的小于0 就会错误提示 输入小于0了,如果为空,就会错误提示输入为空,

最后finally都会执行,将输入框内容清空

原创文章 24 获赞 13 访问量 1350

猜你喜欢

转载自blog.csdn.net/qq_44755188/article/details/105699009