A multi-key map, implemented as nested maps.
Nested maps are created lazily and never removed.
Note that the keys which are not primitive values (string | number | Symbol) most likely need a function that will convert the key into some primitive representation, otherwise the map will compare only references!
string | number | Symbol
Readonly
Remove the entry under inKeys.
inKeys
NOTE: this function does not remove empty maps.
Returns true if the value was removed or false otherwise.
true
false
Get the value under inKeys or undefined if not present.
undefined
Check presence of the value under inKeys.
Set given value at particular location denoted by inKeys.
value
The function will create all missing nested maps.
Static
Pass the number of keys and optionally mappers from keys to primitive types if needed.
Optional
A multi-key map, implemented as nested maps.
Nested maps are created lazily and never removed.
Note that the keys which are not primitive values (
string | number | Symbol) most likely need a function that will convert the key into some primitive representation, otherwise the map will compare only references!