A minimal-weight utility similar to lodash.isequal
. For when every byte counts!
Performs a deep (recursive) comparison between the two arguments. It differs from
lodash.isequal
in one significant way: it requires that the two values have the
same prototype and properies, including unenumerable ones.
npm install @ngard/tiny-isequal
isEqual(/* value1, value2 */);
value1
- Any Javascript value
value2
- Any Javascript value
true
if the two values are deeply equal, false
otherwise.
import { isEqual } from "@ngard/tiny-isequal";
const samesies = isEqual({ a: 1 }, { a: 1 });
// samesies is true
import { isEqual } from "@ngard/tiny-isequal";
const samesies = isEqual({ a: { b: "c" } }, { a: { b: "c" } });
// samesies is true
import { isEqual } from "@ngard/tiny-isequal";
const obj = [1, 2, 3];
const samesies = isEqual(obj, obj);
// samesies is true
import { isEqual } from "@ngard/tiny-isequal";
const samesies = isEqual(NaN, NaN);
// samesies is true