@klippersubs/hashtable

Hash table implementation.
yarn add @klippersubs/hashtable
import HashTable, { hashString } from '@klippersubs/hashtable';
const ht = new HashTable(hashString);
ht.set('Alice', '+7 987 654‑32‑10');
ht.set('Bob', '+81 987 654‑32‑10');
ht.set('Alice', '+81 012 345‑67‑89');
ht.delete('Bob');
console.log(ht.get('Alice'));
console.log(ht.get('Bob'));
console.log(ht.has('Bob'));
import { StringTable } from '@klippersubs/hashtable';
const st = new StringTable();
st.set('Alice', '+7 987 654‑32‑10');
st.set('Bob', '+81 987 654‑32‑10');
st.set('Alice', '+81 012 345‑67‑89');
st.delete('Bob');
console.log(st.get('Alice'));
console.log(st.get('Bob'));
console.log(st.has('Bob'));
Exported API
Type export Hash
Callback type for calculating a hash of key.
Generic params:
Params:
key: Key
— a key to calculate hash.
capacity: number
— hash table capacity.
Return value:
Export hashString
Calculates a hash of string key.
Params:
key: string
— a key to calculate hash.
capacity: number
— hash table capacity.
Return value:
Default export HashTable
Hash table class.
Generic params:
Key
— key type.
Value
— value type.
Constructor
Params:
hash: Hash<Key>
— hash function.
capacity: number = 8
— capacity of the hash table.
Method set
Sets key–value pair.
Params:
Return value:
Method get
Returns value of a key–value pair.
Params:
Return value:
Method has
Checks if key—value pair exists.
Params:
Return value:
Method delete
Deletes key—value pair.
Params:
Return value:
Export StringTable
Specialized hash table with string keys.
Generic params:
Constructor
Params:
capacity: number = 8
— capacity of the hash table.
License
MIT