throw 抛异常
异常处理是指预估代码执行过程中可能发生的错误,然后最大程度的避免错误的发生导致整个程序无法继续运行
function fn(x, y) {
if (!x || !y) {
// throw '没有参数传递进来'
throw new Error('没有参数传递过来')
}
return x + y
}
console.log(fn())
总结:
-
throw 抛出异常信息,程序也会终止执行
-
throw 后面跟的是错误提示信息
-
Error 对象配合 throw 使用,能够设置更详细的错误信息
try /catch 捕获异常
可以通过try / catch 捕获错误信息(浏览器提供的错误信息)
<p>123</p>
<script>
function fn() {
try {
// 可能预估有问题的代码写到这里
const p = document.querySelector('.p')
p.style.color = 'red'
} catch (err) {
console.log(err.message)
// 中断
// return
throw new Error('你是不是把选择器写错了')
} finally {
alert('执行')
}
console.log(111)
}
fn()
总结:
-
try...catch 用于捕获错误信息
-
将预估可能发生错误的代码写在 try 代码段中
-
如果 try 代码段中出现错误后,会执行 catch 代码段,并截获到错误信息
-
finally 不管是否有错误,都会执行