deep-is

node's assert.deepEqual algorithm except for NaN being equal to NaN

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
deep-is
1700.1.42 years ago10 years agoMinified + gzip package size for deep-is in KB

Readme

deep-is
Node's assert.deepEqual() algorithm as a standalone module. Exactly like deep-equal except for the fact that deepEqual(NaN, NaN) === true.
This module is around 5 times faster than wrapping assert.deepEqual() in a try/catch.
browser support
build status
example
var equal = require('deep-is');
console.dir([
    equal(
        { a : [ 2, 3 ], b : [ 4 ] },
        { a : [ 2, 3 ], b : [ 4 ] }
    ),
    equal(
        { x : 5, y : [6] },
        { x : 5, y : 6 }
    )
]);
methods
var deepIs = require('deep-is')

deepIs(a, b)

Compare objects a and b, returning whether they are equal according to a recursive equality algorithm.
install
With npm do:
npm install deep-is
test
With npm do:
npm test
license
Copyright (c) 2012, 2013 Thorsten Lorenz Copyright (c) 2012 James Halliday
Derived largely from node's assert module, which has the copyright statement:
Copyright (c) 2009 Thomas Robinson <280north.com>
Released under the MIT license, see LICENSE for details.