GitPedia

Node deep equal

node's assert.deepEqual algorithm

From inspect-js·Updated May 13, 2026·View on GitHub·

Node's `assert.deepEqual() algorithm` as a standalone module, that also works in browser environments. The project is written primarily in JavaScript, distributed under the MIT License license, first published in 2012. Key topics include: assert, deepequal, equal, javascript, loose.

deep-equal <sup>Version Badge</sup>

Node's assert.deepEqual() algorithm as a standalone module, that also works in browser environments.

It mirrors the robustness of node's own assert.deepEqual and is robust against later builtin modification.

github actions
coverage
License
Downloads

npm badge

example

js
var equal = require('deep-equal'); console.dir([ equal( { a : [ 2, 3 ], b : [ 4 ] }, { a : [ 2, 3 ], b : [ 4 ] } ), equal( { x : 5, y : [6] }, { x : 5, y : 6 } ) ]);

methods

js
var deepEqual = require('deep-equal')

deepEqual(a, b, opts)

Compare objects a and b, returning whether they are equal according to a recursive equality algorithm.

If opts.strict is true, use strict equality (===) to compare leaf nodes.
The default is to use coercive equality (==) because that's how assert.deepEqual() works by default.

install

With npm do:

npm install deep-equal

test

With npm do:

npm test

Contributors

Showing top 12 contributors by commit count.

View all contributors on GitHub →

This article is auto-generated from inspect-js/node-deep-equal via the GitHub API.Last fetched: 6/17/2026