jq错误处理|2-12

简介: jq错误处理|2-12

在执行JavaScript代码的时候,有些情况下会发生错误。

错误分两种,一种是程序写的逻辑不对,导致代码执行异常。例如:

var s = null;
var len = s.length; // TypeError:null变量没有length属性

对于这种错误,要修复程序。

一种是执行过程中,程序可能遇到无法预测的异常情况而报错,例如,网络连接中断,读取不存在的文件,没有操作权限等。

对于这种错误,我们需要处理它,并可能需要给用户反馈。

错误处理是程序设计时必须要考虑的问题。对于C这样贴近系统底层的语言,错误是通过错误码返回的:

int fd = open("/path/to/file", O_RDONLY);
if (fd == -1) {
    printf("Error when open file!");
} else {
    // TODO
}

通过错误码返回错误,就需要约定什么是正确的返回值,什么是错误的返回值。上面的open()函数约定返回-1表示错误。

显然,这种用错误码表示错误在编写程序时十分不便。

因此,高级语言通常都提供了更抽象的错误处理逻辑try ... catch ... finally,JavaScript也不例外。

try ... catch ... finally

使用try ... catch ... finally处理错误时,我们编写的代码如下:

复制  

'use strict';
// 直接运行

Run


相关文章
|
3月前
|
JavaScript 前端开发
jq事件2-8
jq事件2-8
|
3月前
|
JavaScript 前端开发
jq异步异常处理2-14
jq异步异常处理2-14
|
4月前
|
JavaScript
将jq转为原生js格式
将jq转为原生js格式
42 2
|
6月前
|
Go
go错误处理
go错误处理
|
6月前
|
Go
Go 错误处理
Go 错误处理
37 3
|
7月前
|
Rust 自然语言处理 算法
【Rust 中的错误处理:掌握 Option、Result、expect、unwrap 和 ? 运算符】Error Handling in Rust
【Rust 中的错误处理:掌握 Option、Result、expect、unwrap 和 ? 运算符】Error Handling in Rust
264 0
Go Errors 错误处理
Go Errors 错误处理
108 1
|
网络协议 Go
Golang中错误处理
Golang中错误处理
|
前端开发 JavaScript 数据库连接