JavaScript异步编程1.4 异步错误的处理_JavaScript异步编程1.4 异步错误的处理试读-查字典图书网
查字典图书网
当前位置: 查字典 > 图书网 > 编程 > JavaScript异步编程 > 1.4 异步错误的处理

JavaScript异步编程——1.4 异步错误的处理

像很多时髦的语言一样,JavaScript也允许抛出异常,随后再用一个try/catch语句块捕获。如果抛出的异常未被捕获,大多数JavaScript环境都会提供一个有用的堆栈轨迹。举个例子,下面这段代码由于'{'为无效JSON对象而抛出异常。 EventModel/stackTrace.js function JSONToObject(jsonStr) { return JSON.parse(jsonStr); } var obj = JSONToObject('{'); SyntaxError: Unexpected end of input at Object.parse (native) at JSONToObject (/AsyncJS/stackTrace.js:2:15) at Object.<anonymous> (/AsyncJS/stackTrace.js:4:11) 堆栈轨迹不仅告诉我们哪里抛出了错误,而且说明了最初出错的地方:第4行代码。遗憾的是,自顶向下地跟踪异步错误起源并不都这么直截了当。在本节中,我们会看到为什么throw很少用作回调内错误处理的正确工具,还会了解如何设计异步API以绕开这一局限。

展开全文

推荐文章

猜你喜欢

附近的人在看

推荐阅读

拓展阅读

《JavaScript异步编程》其他试读目录

• 第1章:深入理解JavaScript事件
• 1.1.1 现在还是将来运行
• 1.1.2 线程的阻塞
• 1.1.3 队列
• 1.2 异步函数的类型
• 1.2.1 异步的I/O函数
• 1.2.2 异步的计时函数
• 1.3 异步函数的编写
• 1.3.1 何时称函数为异步的
• 1.3.2 间或异步的函数
• 1.3.3 缓存型异步函数
• 1.3.4 异步递归与回调存储
• 1.3.5 返值与回调的混搭
• 1.4 异步错误的处理 [当前]
• 1.4.1 回调内抛出的错误
• 1.4.2 未捕获异常的处理
• 1.4.3 抛出还是不抛出
• 1.5 嵌套式回调的解嵌套
• 1.6 小结