# LRUCache
Author: liukun 919590347@qq.com
- LRUCache
- new LRUCache([len])
- .has(key) ⇒
boolean
- .get(key) ⇒
unknown
|null
|Map.<unknown, unknown>
- .set(key, val) ⇒
undefined
# new LRUCache([len])
lru缓存算法。指定缓存空间长度,当缓存超出时,清除最不活跃的缓存。
Param | Type | Default | Description |
---|---|---|---|
[len] | number | 0 | lru缓存上限,默认为0,无上限。 |
Example
import { LRUCache } from '@wont/utils'
const lru = new LRUCache(3);
lru.set(1, 1);
lru.set(2, 2);
lru.set(3, 3);
lru.set(4, 4);
lru.set(4, 5);
console.info(lru.get()); // return Map(3) { 2 => 2, 3 => 3, 4 => 5 }
# lruCache.has(key) ⇒ boolean
检测是否有缓存
Returns: boolean
-
是否存在缓存
Param | Type | Description |
---|---|---|
key | unknown | The key to check. |
# lruCache.get(key) ⇒ unknown
| null
| Map.<unknown, unknown>
通过key获取缓存。如果存在缓存,则更新为最近使用。
Returns: unknown
| null
| Map.<unknown, unknown>
-
不存在返回null。key不传返回全部缓存map
Param | Type | Description |
---|---|---|
key | unknown | The key to retrieve the value for. |
# lruCache.set(key, val) ⇒ undefined
设置新增或修改缓存。并且将设置的缓存设置为最近使用
Param | Type | Description |
---|---|---|
key | unknown | The key to set. |
val | unknown | The value to set. |