try{
console.log("123");
var a = b; //这行语句有错误,b没有被定义
console.log("哈哈");
}catch(err){
}
console.log("456");
返回结果
123
b is not defined
456
程序的执行逻辑是这样的: 运行try语句块里面的语句,如果遇见了错误的语句,不向浏览器抛出错误。而是执行catch语句段里的语句。try语句里面没有执行完的语句,不执行了。catch语句块执行完毕之后,执行后面的语句。