Related Tags

node.js

# What is the ifError method of the assert module in Node.js?

Talha Ashar

Ace your System Design Interview and take your career to the next level. Learn to handle the design of applications like Netflix, Quora, Facebook, Uber, and many more in a 45-min interview. Learn the RESHADED framework for architecting web-scale applications by determining requirements, constraints, and assumptions before diving into a step-by-step design process.

The ifError method of the assert module in Node.js throws an error if the provided value is not null or undefined. The ifError method is commonly used to test error arguments in callbacks.

The process is illustrated below:

To use the ifError method, you will need to install the assert module using the command prompt, as shown below:

npm install assert


After the installation is complete, you will need to import the assert module into the program, as shown below:

const assert = require('assert');


The prototype of the ifError method is shown below:

ifError(value)


## Paramaters

The ifError method takes a single mandatory parameter that represents the value to be checked for an error.

## Return value

If value is not null or undefined, then the ifError method throws an AssertionError, and the program terminates; otherwise, execution continues as normal.

## Example

The code below shows how the ifError method works in Node.js:

const assert = require('assert');// evaluating first expressiontry{  assert.ifError('23')  console.log("No error.")}catch(error){  console.log(error.message)}// evaluating second expressiontry{  assert.ifError('error')  console.log("No error.")}catch(error){  console.log(error.message)}// evaluating third expressiontry{  assert.ifError(null)  console.log("No error.")}catch(error){  console.log(error.message)}// evaluating fourth expressiontry{  assert.ifError(undefined)  console.log("No error.")}catch(error){  console.log(error.message)}

## Explanation

The code above uses $4$ different expressions to show the behavior of the ifError method.

In the first two expressions in lines $5$ and $14$, value is “23” and “error”, respectively. Since value is neither null nor undefined, the ifError method throws an error, which triggers the catch branch of the try-catch block. The code outputs the message associated with the error, i.e., the value parameter itself.

In the expressions in line $23$ and $32$, value is null and undefined, respectively. Therefore, the ifError method does not throw any errors, and only the try branch of the try-catch block executes.

RELATED TAGS

node.js

CONTRIBUTOR

Talha Ashar