异常处理是保障代码健壮性的关键技能,掌握它能帮助你优雅地应对程序运行中的意外情况!
🛠️ 基本概念
异常处理主要包括以下组件:
try
:包裹可能抛出异常的代码块catch
:捕获并处理异常finally
:无论是否出错都会执行的代码throw
:主动抛出异常
💡 小提示:异常处理就像给代码装上安全气囊,能有效减少程序崩溃的风险
🧱 try...catch 结构
try {
// 可能出错的代码
} catch (error) {
// 处理异常
console.error('发生错误:', error.message);
} finally {
// 清理资源
}
📌 常见错误类型
错误类型 | 描述 | 示例 |
---|---|---|
语法错误 | 代码书写错误 | let x = 5 (缺少分号) |
运行时错误 | 运行时发生的错误 | undefined.property |
逻辑错误 | 程序逻辑缺陷 | if (x == 5) (类型错误) |
📈 异常处理最佳实践
- 避免过度捕获:只捕获你明确处理的异常类型
- 使用具体错误类型:如
TypeError
而不是泛泛的Error
- 及时清理资资源:在
finally
中释放文件句柄等 - 记录错误信息:包含堆栈信息便于排查问题
📚 延伸阅读:JavaScript 错误处理最佳实践
🛡️ 异常处理技巧
- 使用
try...catch
包裹异步操作 - 结合
Promise.catch()
捕获未处理的Promise拒绝 - 利用
Error.stack
获取完整调用栈信息
🧪 实战演练
尝试修改以下代码,添加异常处理:
function divide(a, b) {
return a / b;
}
divide(10, 0); // 会抛出异常
✅ 正确做法:在除法操作周围添加
try...catch
块
🌐 扩展学习
想深入了解 JavaScript 异常处理的高级用法?点击这里 获取更多技巧!