<!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>