学习目标:
- 掌握异常处理
学习内容:
- throw抛异常
- try/catch捕获异常
- debugger
throw抛异常:
异常处理是预估代码执行过程中可能发生的错误,然后最大程度的避免错误的发生导致整个程序无法继续运行。
<title>throw抛异常</title>
</head><body><script>function fn(x, y) {if (!x || !y) {// throw '没有参数传递进来'throw new Error('没有参数传递过来')}return x + y}console.log(fn())</script></body>
- 总结:
throw
抛出异常信息,程序也会终止执行。throw
后面跟的是错误提示信息。Error
对象搭配throw
使用,能够设置更详细的错误信息。
- 小结:
1.抛出异常我们用哪个关键字? | throw 关键字 |
---|---|
2. 它会终止程序吗? | 会 中止程序 |
3.抛出异常经常和谁配合使用? | Error 对象搭配throw 使用 |
try/catch捕获异常:
我们可以通过 try/catch
捕获错误信息(浏览器提供的错误信息) try试试
,catch拦住
,finally最后
。
<title>catch捕获异常</title>
</head><body><p>123</p><script>function fn() {try {// 可能发送错误的代码 要写到 tryconst p = document.querySelector('.p')p.style.color = 'red'} catch (err) {// 拦截错误,提示浏览器提供的错误信息,但是不中断程序的执行console.log(err.message)throw new Error('你看看,选择器错误了吧')// 需要加return 中断程序// return}finally {// 不管你程序对不对,一定会执行的代码alert('弹出对话框')}console.log(11)}fn()</script></body>
- 总结:
try..catch用于捕获错误信息
。- 将预估可能发生错误的代码写在
try
代码段中。 - 如果
try
代码段中出现错误后,会执行catch
代码段,并截获到错误信息。 finally
不管是否有错误,都会执行。
- 小结;
1.捕获异常我们用哪3个关键字? | try ,catch ,finally |
---|---|
2.可能会出现的错误代码写到谁里面? | try |
3.怎么调用错误信息? | 利用catch 的参数 |
debugger:
我们可以通过 try/catch
捕获错误信息(浏览器提供的错误信息)。
<title>debugger</title>
</head><body><script>const arr = [1, 3, 5]const newArr = arr.map((item, index) => {debuggerconsole.log(item) //当前元素console.log(index) //当前元素索引号return item + 10 //让当前元素 + 10})console.log(newArr) //[11,13,15]</script></body>