1.1.1 • Published 2 years ago
bidirect-map v1.1.1
Bidirectional Map
Create "key/value" collections of one-to-one correspondence. Internally it uses two Map objects, so both keys and values can be of any type, and keys can preserve their type.
Install
npm install bidirectional-map
Usage
import BiMap from 'bidirectional-map'
// Create an empty map
let map = new BiMap()
map.set('bob', 'alice')
map.get('bob') // 'alice'
map.getKey('alice') // 'bob'
// Create a map with some key/values
let map2 = new BiMap({
bob: 'alice',
john: 'mary'
})
map2.has('bob') // true
map2.hasValue('mary') // true
map2.deleteValue('mary')
API
Constructors
Arguments | Description |
---|---|
Creates an empty structure | |
object: Object | Creates a structure with the key/values of object |
Properties
Property | Return Type | Description |
---|---|---|
size | any | Returns the number of key/value pairs |
Methods
Method | Arguments | Return Type | Description |
---|---|---|---|
set | key: any , value: any | Sets a new key/value pair | |
get | key: any | any | Returns the value |
getKey | value: any | any | Returns the key |
clear | Removes all key/value pairs | ||
delete | key: any | Deletes a key/value pair by key | |
deleteValue | value: any | Deletes a key/value pair by value | |
entries | MapIterator | Returns a new Iterator object that contains an array of key, value for each element in the structure | |
has | key: any | boolean | Returns true if it exists a pair with the provided key, false otherwise |
hasValue | value: any | boolean | Returns true if it exists a pair with the provided value, false otherwise |
keys | MapIterator | Returns a new Iterator object that contains the keys for each element in the structure | |
values | MapIterator | Returns a new Iterator object that contains the values for each element in the structure | |
getObject | Object | Parses the internal "one direction" map to a plain {} . Throws exception if the map has non-primitive key types | |
getObjectReverse | Object | Parses the internal "one direction" reverse map to a plain {} . Throws exception if the reverse map has non-primitive key types |
Changelog
- 1.1.0
- Add
getObject()
andgetObjectReverse()
methods
- Add
- 1.0.0
- Initial release :tada:
License
1.1.1
2 years ago