quick-lru
Simple "Least Recently Used" (LRU) cache
Useful when you need to cache something and limit memory usage.
Inspired by the haslru
algorithm, but instead uses Map
to support keys of any type, not just strings, and values can be undefined
.
Install
$ npm install quick-lru
Usage
const QuickLRU = require('quick-lru');
const lru = new QuickLRU({maxSize: 1000});
lru.set('🦄', '🌈');
lru.has('🦄');
lru.get('🦄');
API
new QuickLRU([options])
Returns a new instance.
options
Type: Object
maxSize
Required
Type: Object
Maximum number of items before evicting the least recently used items.
Instance
The instance is iterable
so you can use it directly in a for…of
loop.
Both key
and value
can be of any type.
.set(key, value)
Set an item. Returns the instance.
.get(key)
Get an item.
.has(key)
Check if an item exists.
.peek(key)
Get an item without marking it as recently used.
.delete(key)
Delete an item.
.clear()
Delete all items.
.keys()
Iterable for all the keys.
.values()
Iterable for all the values.
.size
Get the item count.
License
MIT © Sindre Sorhus