# LRUCache

Author: liukun 919590347@qq.com

# 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.