Socket
Socket
Sign inDemoInstall

deep-equal

Package Overview
Dependencies
48
Maintainers
1
Versions
22
Alerts
File Explorer

Advanced tools

Install Socket

Detect and block malicious and high-risk dependencies

Install

    deep-equal

node's assert.deepEqual algorithm


Version published
Weekly downloads
20M
decreased by-1.86%
Maintainers
1
Install size
1.93 MB
Created
Weekly downloads
 

Package description

What is deep-equal?

The deep-equal npm package is a library for performing deep equality checks between two values. It is useful for comparing objects, arrays, and other nested structures to determine if they are equivalent in structure and content, regardless of whether they are the same reference in memory.

What are deep-equal's main functionalities?

Deep comparison of objects and arrays

This feature allows you to compare objects and arrays to see if they are structurally identical, even if they are different instances.

const deepEqual = require('deep-equal');

const obj1 = { a: 1, b: { c: 1 } };
const obj2 = { a: 1, b: { c: 1 } };

console.log(deepEqual(obj1, obj2)); // true

Comparison with custom options

This feature allows you to specify options for the comparison, such as strict mode, which requires the values to be of the same type as well.

const deepEqual = require('deep-equal');

const obj1 = { a: 1 };
const obj2 = { a: '1' };
const options = { strict: true };

console.log(deepEqual(obj1, obj2, options)); // false

Other packages similar to deep-equal

Changelog

Source

v2.2.0 - 2023-01-05

Commits

  • [New] add support for SharedArrayBuffer 0ef51c7
  • [Refactor] use is-array-buffer package 0360ee1
  • [Fix] whichTypedArray can return false in both cases df3e3c4
  • [Dev Deps] update aud, object.getownpropertydescriptors 6d62ea4
  • [Dev Deps] update @ljharb/eslint-config 15aab59
  • [Deps] update which-typed-array 8dfce27
  • [eslint] remove .eslintignore af46773

Readme

Source

deep-equal Version Badge

Node's assert.deepEqual() algorithm as a standalone module.

This module is around 46 times faster than wrapping assert.deepEqual() in a try/catch.

github actions coverage dependency status dev dependency status 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

Keywords

FAQs

Last updated on 05 Jan 2023

Did you know?

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts

SocketSocket SOC 2 Logo

Product

  • Package Alerts
  • Integrations
  • Docs
  • Pricing
  • FAQ
  • Roadmap

Stay in touch

Get open source security insights delivered straight into your inbox.


  • Terms
  • Privacy
  • Security

Made with ⚡️ by Socket Inc