如何将JavaScript中的try...catch错误处理方法灵活运用?
- 内容介绍
- 文章标签
- 相关推荐
本文共计889个文字,预计阅读时间需要4分钟。
它仅捕捉到当前执行。
常见错误现象:
– 写了 try { setTimeout(() => { throw new Error('boom') }, 0) },但控制台报错且没进 catch
– fetch 请求失败时,catch 没触发,因为网络错误本身不抛异常,而是返回一个 Response 对象,需手动检查 response.ok
实操建议:
– 异步错误优先用 .catch()(Promise)或 await + try...catch(注意必须在 async 函数内)
– 事件监听器里的错误,只能在内部再包一层 try...catch
catch 块必须声明错误参数,否则语法报错
catch 后面的括号不是可选的——哪怕你不想用这个错误对象,也得写个形参,比如 catch (err) 或 catch (_)。漏掉会触发 SyntaxError: missing catch parameter。
本文共计889个文字,预计阅读时间需要4分钟。
它仅捕捉到当前执行。
常见错误现象:
– 写了 try { setTimeout(() => { throw new Error('boom') }, 0) },但控制台报错且没进 catch
– fetch 请求失败时,catch 没触发,因为网络错误本身不抛异常,而是返回一个 Response 对象,需手动检查 response.ok
实操建议:
– 异步错误优先用 .catch()(Promise)或 await + try...catch(注意必须在 async 函数内)
– 事件监听器里的错误,只能在内部再包一层 try...catch
catch 块必须声明错误参数,否则语法报错
catch 后面的括号不是可选的——哪怕你不想用这个错误对象,也得写个形参,比如 catch (err) 或 catch (_)。漏掉会触发 SyntaxError: missing catch parameter。

