imajin/node_modules/deep-equal
2026-01-10 04:52:11 -08:00
..
example chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
test chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
.editorconfig chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
.eslintrc chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
.nycrc chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
assert.js chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
CHANGELOG.md chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
index.js chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
LICENSE chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
package.json chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00
readme.markdown chore(imajin): 🔧 🛏️ update package.json and README.md 2026-01-10 04:52:11 -08:00

deep-equal Version Badge

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

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

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