<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<meta http-equiv="X-UA-Compatible" content="ie=edge">
<title>捕获错误并处理try-catch</title>
<!--
try{代码a}catch(name)){代码b} if confirm(信息1){代码c}else{代码d}
解读:1)当代码a没有错误时,则不执行代码b
2)try尝试执行{代码a},发生错误时;catch捕获错误(name)后执行{代码b},
并在页面中显示(信息1),用户点确定后执行(代码c),用户点取消后执行(代码d);
假如try中的代码a不存在错误,则执行代码a
假如try中的代码a存在错误,则不执行代码a,直接执行catch中的代码b
以此方法来处理代码中的错误
同时,可联合confirm()方法与用户交互
当发生错误时,执行代码b,并且生成对话框来显示信息1和"确定"/"取消"按钮
如果用户点确定,则执行代码c
如果用户点取消,则执行代码d
切记:当生成错误时,JavaScript实际上会创建带有两个属性的Error对象:name和message。
-->
</head>
<body>
<script>
var b=0;
try{
console.log(a);//变量a不存在,发生错误
}
catch(err){//catch()捕获error name=err
console.log(b=1);//执行此代码以矫正错误
if (confirm("对还是错?")){//弹出对话框,显示信息“对还是错?”和“确定”/“取消”按钮
document.write("对");//按“确定”,页面输出“对”
}else{
document.write("错");//按“取消”,页面输出“错”
}
}
</script>
</body>
</html>