value-equal
value-equal
determines if two JavaScript values are equal using Object.prototype.valueOf
.
In many instances when I’m checking for object equality, what I really want to know is if their values are equal. This is good for:
- Stuff you keep in
localStorage
window.history.state
values- Query strings
Installation
Using npm:
$ npm install --save value-equal
Then with a module bundler like webpack, use as you would anything else:
// using ES6 modules
import valueEqual from 'value-equal'
// using CommonJS modules
var valueEqual = require('value-equal')
The UMD build is also available on unpkg:
<script src="https://unpkg.com/value-equal/umd/value-equal.min.js"></script>
You can find the library on window.valueEqual
.
Usage
valueEqual(1, 1) // true
valueEqual('asdf', 'asdf') // true
valueEqual('asdf', new String('asdf')) // true
valueEqual(true, true) // true
valueEqual(true, false) // false
valueEqual({ a: 'a' }, { a: 'a' }) // true
valueEqual({ a: 'a' }, { a: 'b' }) // false
valueEqual([ 1, 2, 3 ], [ 1, 2, 3 ]) // true
valueEqual([ 1, 2, 3 ], [ 2, 3, 4 ]) // false
That’s it. Enjoy!