https://github.com/moroshko/shallow-equal
Minimalistic shallow equality check for arrays/objects
https://github.com/moroshko/shallow-equal
array arrays equal equality equality-check equals object objects shallow
Last synced: about 1 month ago
JSON representation
Minimalistic shallow equality check for arrays/objects
- Host: GitHub
- URL: https://github.com/moroshko/shallow-equal
- Owner: moroshko
- License: mit
- Created: 2016-08-12T10:54:58.000Z (over 8 years ago)
- Default Branch: master
- Last Pushed: 2023-02-15T21:21:54.000Z (about 2 years ago)
- Last Synced: 2025-03-28T17:09:48.601Z (about 1 month ago)
- Topics: array, arrays, equal, equality, equality-check, equals, object, objects, shallow
- Language: TypeScript
- Size: 2.53 MB
- Stars: 78
- Watchers: 3
- Forks: 8
- Open Issues: 13
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
README
## Description
If you know you have two arrays or two objects in hand, and you want to know if they are shallowly equal or not, this library is for you.
## Features
- Super light
- No dependencies
- Thoroughly tested## Installation
```shell
npm install shallow-equal --save
```
or
```shell
yarn add shallow-equal
```## Usage
```js
import { shallowEqualArrays } from "shallow-equal";shallowEqualArrays([1, 2, 3], [1, 2, 3]); // => true
shallowEqualArrays([{ a: 5 }], [{ a: 5 }]); // => false
``````js
import { shallowEqualObjects } from "shallow-equal";shallowEqualObjects({ a: 5, b: "abc" }, { a: 5, b: "abc" }); // => true
shallowEqualObjects({ a: 5, b: {} }, { a: 5, b: {} }); // => false
```You can also use the generic form, `shallowEqual`. But note that it does runtime type checking in order to decide whether it's comparing arrays or objects, so the convenience comes with a runtime penalty.
```js
import { shallowEqual } from "shallow-equal";shallowEqual([1, 2, 3], [1, 2, 3]); // => true
shallowEqual({ a: 5, b: {} }, { a: 5, b: {} }); // => false
```