You are currently viewing Node.js Функция assert.deepStrictEqual()

Node.js Функция assert.deepStrictEqual()

Модуль assert предоставляет набор функций утверждения для проверки инвариантов. Функция assert.deepStrictEqual() проверяет глубокое равенство между фактическими и ожидаемыми параметрами. Если условие истинно, оно не приведет к выходу, иначе возникнет ошибка утверждения.

Синтаксис:

assert.deepStrictEqual(actual, expected[, message])

Параметры: Эта функция принимает следующие параметры, как указано выше и описано ниже:

  • фактический: Этот параметр содержит фактическое значение, которое необходимо оценить. Он любого типа.
  • ожидаемый: Этот параметр содержит ожидаемое значение, которое сопоставляется с фактическим значением. Он любого типа.
  • Сообщение: Этот параметр содержит сообщение об ошибке строкового или типа ошибки. Это необязательный параметр.

Возвращаемое Значение: Эта функция возвращает ошибку утверждения типа объекта.

Установка модуля assert: 

  1. Вы можете перейти по ссылке на Установите модуль assert. Вы можете установить этот пакет с помощью этой команды.
npm install assert

2. Примечание: Установка является необязательным шагом, так как она встроена Node.js модуль.

3. После установки модуля assert вы можете проверить свои подтвердите версию в командной строке с помощью команды.

npm version assert

4. После этого вы можете просто создать папку и добавить файл, например, index.js как показано ниже.

Пример 1: 

Имя файла: index.js 

// Requiring the module
const assert = require('assert').strict;
	
// Function call
try {
	assert.deepStrictEqual({ a: '5' }, { a: '5' });
} catch(error) {
	console.log("Error: ", error)
}

Шаги для запуска программы:

  1. Структура проекта будет выглядеть следующим образом:

2. Бежать index.js файл с помощью следующей команды:

node index.js

Выход:

Error: AssertionError [ERR_ASSERTION]: Expected values to be strictly deep-equal:
+ actual – expected

{
+ a: 1
– a: ‘1’
}
at Object. (C:\Users\Lenovo\Downloads\index.js:14:12)
at Module._compile (internal/modules/cjs/loader.js:1138:30)
at Object.Module._extensions..js (internal/modules/cjs/loader.js:1158:10)
at Module.load (internal/modules/cjs/loader.js:986:32)
at Function.Module._load (internal/modules/cjs/loader.js:879:14)
at Function.executeUserEntryPoint [as runMain] (internal/modules/run_main.js:71:12)
at internal/main/run_main_module.js:17:47 {
generatedMessage: true,
code: ‘ERR_ASSERTION’,
actual: [Object],
expected: [Object],
operator: ‘deepStrictEqual’
}

Пример 2:

Имя файла: index.js

// Requiring the module
const assert = require('assert').strict;
	
// Function call
try {
	assert.deepStrictEqual({ a: '5' }, { a: '5' });
	console.log("No Error Occured")
} catch(error) {
	console.log("Error: ", error)
}

Шаги для запуска программы:

  1. Структура проекта будет выглядеть следующим образом:

2. Бежать index.js файл с помощью следующей команды:

node index.js

Выход:

No Error Occured

Ссылка: https://nodejs.org/dist/latest-v12.x/docs/api/assert.html#assert_assert_deepstrictequal_actual_expected_message