- Node.js 教程
- Node.js - 首页
- Node.js - 简介
- Node.js - 环境搭建
- Node.js - 第一个应用程序
- Node.js - REPL 终端
- Node.js - 命令行选项
- Node.js - 包管理器 (NPM)
- Node.js - 回调函数概念
- Node.js - 上传文件
- Node.js - 发送电子邮件
- Node.js - 事件
- Node.js - 事件循环
- Node.js - 事件发射器
- Node.js - 调试器
- Node.js - 全局对象
- Node.js - 控制台
- Node.js - 进程
- Node.js - 应用程序扩展
- Node.js - 打包
- Node.js - Express 框架
- Node.js - RESTFul API
- Node.js - 缓冲区
- Node.js - 流
- Node.js - 文件系统
- Node.js MySQL
- Node.js - MySQL 入门
- Node.js - MySQL 创建数据库
- Node.js - MySQL 创建表
- Node.js - MySQL 插入数据
- Node.js - MySQL 从表中选择数据
- Node.js - MySQL Where 条件
- Node.js - MySQL 排序
- Node.js - MySQL 删除数据
- Node.js - MySQL 更新数据
- Node.js - MySQL 连接
- Node.js MongoDB
- Node.js - MongoDB 入门
- Node.js - MongoDB 创建数据库
- Node.js - MongoDB 创建集合
- Node.js - MongoDB 插入数据
- Node.js - MongoDB 查找数据
- Node.js - MongoDB 查询
- Node.js - MongoDB 排序
- Node.js - MongoDB 删除数据
- Node.js - MongoDB 更新数据
- Node.js - MongoDB 限制结果
- Node.js - MongoDB 连接
- Node.js 模块
- Node.js - 模块
- Node.js - 内置模块
- Node.js - 实用程序模块
- Node.js - Web 模块
- Node.js 有用资源
- Node.js - 快速指南
- Node.js - 有用资源
- Node.js - 讨论
Node.js - assert.ifError() 函数
Node.js assert.ifError() 函数用于测试异步操作中的错误,并在发生错误时引发错误。
它接受一个参数,该参数应为 Error 对象或计算结果为 false 的值(例如 undefined 或 null)。如果参数为 undefined 或 null,则会抛出一个带有提供的消息的错误。否则,它什么也不做并返回 undefined。这允许开发人员编写处理同步和异步错误的代码,而无需每次都手动检查它们。
语法
以下是 Node.js assert.ifError() 函数 的语法:
assert.ifError(value);
参数
value − (必填) 我们传递的值存储在此参数中。如果该值不是 undefined 或 null,则此函数会抛出此值,并且输入值可以是任何类型。
返回值
此函数返回对象类型的 AssertionError 以输出。
示例
在下面的示例中,我们将 'undefined' 传递给 Node.js assert.ifError() 函数的 value 参数。
const assert = require('assert'); var und = undefined; assert.ifError(und);
输出
执行上述程序时,ifError() 函数不会抛出 AssertionError,因为该值为 undefined。
// Returns nothing
示例
在下面的示例中,我们将 'null' 传递给 Node.js assert.ifError() 函数的 value 参数。
const assert = require('assert'); var NULL = null; assert.ifError(NULL);
输出
执行上述程序时,ifError() 函数不会抛出 AssertionError,因为该值为 null。
// Returns nothing
注意 − 除非该值为 undefined 或 null,否则该函数将抛出 AssertionError 以及该值。
示例
在下面的示例中,我们将一个整数传递给函数的 value 参数。
const assert = require('assert'); var num = 55; assert.ifError(num);
输出
执行上述程序时,该函数将抛出 AssertionError 以及我们传递的值。
assert.js:667 throw newErr; ^ AssertionError [ERR_ASSERTION]: ifError got unwanted exception: 55 at Object.<anonymous> (/home/cg/root/639c30a0a5fb2/main.js:4:8) at Module._compile (internal/modules/cjs/loader.js:702:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10) at Module.load (internal/modules/cjs/loader.js:612:32) at tryModuleLoad (internal/modules/cjs/loader.js:551:12) at Function.Module._load (internal/modules/cjs/loader.js:543:3) at Function.Module.runMain (internal/modules/cjs/loader.js:744:10) at startup (internal/bootstrap/node.js:238:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)
示例
在下面的示例中,我们将一个字符串传递给函数的 value 参数。
const assert = require('assert'); var text = 'Tutorialspoint'; assert.ifError(text);
输出
执行上述程序时,该函数将抛出 AssertionError 以及我们传递的值。
assert.js:667 throw newErr; ^ AssertionError [ERR_ASSERTION]: ifError got unwanted exception: 'Tutorialspoint' at Object.<anonymous> (/home/cg/root/639c30a0a5fb2/main.js:4:8) at Module._compile (internal/modules/cjs/loader.js:702:30)at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10) at Module.load (internal/modules/cjs/loader.js:612:32) at tryModuleLoad (internal/modules/cjs/loader.js:551:12) at Function.Module._load (internal/modules/cjs/loader.js:543:3) at Function.Module.runMain (internal/modules/cjs/loader.js:744:10) at startup (internal/bootstrap/node.js:238:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)
示例
在下面的示例中,我们将 Error 的实例传递给函数的 message 参数。
const assert = require('assert'); var err = new Error('Error warning!!!!'); assert.ifError(err);
输出
因此,当我们编译并运行代码时,该函数将抛出 AssertionError,并且将抛出 Error 的值。
assert.js:667 throw newErr; ^ AssertionError [ERR_ASSERTION]: ifError got unwanted exception: Error warning!!!! at Object.<anonymous> (/home/cg/root/639c30a0a5fb2/main.js:4:8) at Object.<anonymous> (/home/cg/root/639c30a0a5fb2/main.js:3:11) at Module._compile (internal/modules/cjs/loader.js:702:30) at Object.Module._extensions..js (internal/modules/cjs/loader.js:713:10) at Module.load (internal/modules/cjs/loader.js:612:32) at tryModuleLoad (internal/modules/cjs/loader.js:551:12) at Function.Module._load (internal/modules/cjs/loader.js:543:3) at Function.Module.runMain (internal/modules/cjs/loader.js:744:10) at startup (internal/bootstrap/node.js:238:19) at bootstrapNodeJSCore (internal/bootstrap/node.js:572:3)