
- 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)