JavaScript异常处理

Posted 还是不会呀

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了JavaScript异常处理相关的知识,希望对你有一定的参考价值。

抛出错误

通过throw关键字,抛出一个错误,让函数告知外界自己出现了错误。

抛出的错误再函数的上没有被调用,会一层一层的向外边传,直到顶层JS代码还没对这个异常进行处理,那么就会报错。

function foo1() {
  throw "error message";
}

function foo2() {
  foo1();
}

function foo3() {
  foo2();
}

// 直到foo3函数,都没有foo1内的异常进行处理,那么会报错
foo3();

抛出异常的类型

throw关键字可以跟上基本数据类:如 number、string、Boolean。也可以跟上一个对象类型

JS内部就已经存在了一个Error类型,用来描述错误。

捕获异常

function foo1() {
  throw new Error("foo1 error message");
}

function foo2() {
  foo1();
}

function foo3() {
  foo2();
}

// try...catch对异常进行捕获,try内的代码存在抛出异常的可能,那么catch对错误信息进行捕获
try {
  foo3();
} catch (error) {
  console.log(error); // 错误信息
  console.log(error.name); // 错误名字
  console.log(error.message); // 错误信息
  console.log(error.stack); // 函数调用栈
} finally {
  // 无论是否存在错误,finally内的代码都会执行
  console.log("finally 内的代码继续执行~"); // finally 内的代码继续执行~
}

以上是关于JavaScript异常处理的主要内容,如果未能解决你的问题,请参考以下文章

PCL异常处理:pcl 1.8.13rdpartyoostincludeoost-1_64oost ypeofmsvc ypeof_impl.hpp(125): error(代码片段

使用片段中的处理程序时出现非法状态异常

javascript 异常处理使用总结

Java异常处理机制

JavaScript的异常处理

javascript 异常处理和事件处理