javascript中try catch throw 的用法

try 尝试执行
catch 捕获异常
throw 抛出异常
<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA_Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Title</title>
    <link rel="stylesheet" href="bootstrap-3.3.7-dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<!--在下面的input中输入一个数字-->
<input type="text" id="numble">
<button type="button" id="test">测试输入</button>
<script type="text/javascript">
    var button = document.getElementById('test');
    button.onclick = function () {
        try{
        var numble = document.getElementById('number').value;//获取在input中输入的数字,但是一不小心写错了numble写成了number。
        }
        catch (e) {
            // catch的参数e就是这个错误
            
            console.log(e);//输出如下:
            // TypeError: Cannot read property 'value' of null
            //     at HTMLButtonElement.button.onclick (a_58_try_catch_throw_的用法_.html?_ijt=uq62hvdk6fjgh3f20vkmjb458s:18)
            
            
            // 可是希望能够输出input中的value,在上面代码不改变的情况下,可以:
            var numble_2 = document.getElementById('numble').value;
            console.log(numble_2);//输出:
            // TypeError: Cannot read property 'value' of null
            //     at HTMLButtonElement.button.onclick (a_58_try_catch_throw_的用法_.html?_ijt=fmrk8e01rf9e9a3m4nrpmh97di:18)
            // 1234
        }
    };
</script>
</body>
</html>

<!DOCTYPE html>
<html lang="en">
<head>
    <meta charset="UTF-8">
    <meta http-equiv="X-UA_Compatible" content="IE=edge">
    <meta name="viewport" content="width=device-width, initial-scale=1">
    <title>Title</title>
    <link rel="stylesheet" href="bootstrap-3.3.7-dist/css/bootstrap.min.css" rel="stylesheet">
</head>
<body>
<!--在下面的input中输入一个数字-->
<input type="text" id="numble">
<button type="button" id="test">测试输入</button>
<script type="text/javascript">
    var button = document.getElementById('test');
    button.onclick = function () {
        try{
            var numble = document.getElementById('numble').value;
            if (numble != 0) {
                throw "value不为0"
            }
        }
        catch (e) {
            // catch的参数e就是这个错误

            console.log(e);//输出如下:
            // value不为0
        }
    };
</script>
</body>
</html>

猜你喜欢

转载自blog.csdn.net/weixin_45949073/article/details/107812656
今日推荐