object-js
v0.2.0
Published
Object oriented JS library for ES6
Downloads
2
Readme
object-js
Low level Object design for ES6
Benefits
- easy hashCode and equals hooks for determining equality between two instances
Build Status
Install
npm install --save object-js
Usage
import js, { Obj } from 'object-js';
class Thing extends Obj {
constructor(prop) {
this.prop = prop;
}
equals(value) {
return js.doesExtend(value, Thing) && value.prop === this.prop;
}
hashCode() {
if (!this._hashCode) {
this._hashCode = js.hash(this.prop);
}
return this._hashCode;
}
}
const thing1 = new Thing('abc');
const thing2 = new Thing('abc');
const thing3 = new Thing('bcd');
js.equals(thing1, thing2) // true
js.equals(thing2, thing3) // false