try...catch 错误处理
最后更新:2026-09-09
try...catch 错误处理
try...catch 捕获并处理运行时错误,防止程序崩溃。finally 块无论是否有错误都会执行。
| 分类 | 语句 |
|---|---|
| ES 版本 | ES1 |
📝 语法
try { ... } catch (err) { ... } finally { ... }
返回值:undefined。
是否修改原值:否(返回新值)
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
无论如何都执行
💡 提示 JSON.parse 和 fetch 等 API 调用必须配合 try/catch——否则错误会导致程序崩溃。
ℹ️ info throw new Error('msg') 主动抛出错误——被最近的 catch 捕获。
🌐 浏览器支持
| 浏览器 | |||||
|---|---|---|---|---|---|
| try...catch | ✓ v1 | ✓ v12 | ✓ v1 | ✓ v1 | ✓ v1 |
| 所有现代浏览器均支持 | |||||
🏷️ 相关条目
💡 相关案例
更多实战案例即将上线,敬请期待。
📚 相关教程
❓ 常见问题
Qtry...catch 能捕获异步错误吗?
A普通 try/catch 不能捕获 Promise 的异步错误——用 async/await + try/catch 或 Promise.catch。
Qfinally 的作用?
A无论是否有错误都执行——常用于清理资源。
Qthrow 是什么?
A主动抛出错误——被最近的 try...catch 捕获。