npm.io
1.0.3 • Published 9 years ago

lrucache

Licence
Version
1.0.3
Deps
0
Vulns
0
Weekly
0
Stars
11

LRUCache

LRU Cache for node.js/browser.

NPM version Build Status Downloads

使用链表实现的 LRU 缓存。getsetupdate 方法会更新 LRU 优先级。

Install

Node.js:

npm install lrucache

bower:

bower install lrucache

Browser:

<script src="/pathTo/lrucache.js"></script>

API

const LRUCache = require('lrucache')
Class LRUCache([capacity])
  • capacity: : Optional, Type: Number, Default: Number.MAX_SAFE_INTEGER.
const cache = LRUCache(100)
LRUCache.prototype.get(key)

Return value.

let a = cache.get('a')
LRUCache.prototype.set(key, value)

Return this.

cache.set('a', [1, 2, 3])
LRUCache.prototype.update(key, fn)

Return this, It only run when key exists.

cache.update('a', function (a) {
  a.push(4)
  return a
})
LRUCache.prototype.remove(key)

Return this.

cache.remove('a')
LRUCache.prototype.removeAll(key)

Return this.

cache.removeAll()
LRUCache.prototype.keys()

Return a array of keys.

cache.keys()
LRUCache.prototype.has(key)

Return true or false.

cache.has('a')
LRUCache.prototype.staleKey()

Return the stalest key or null.

let staleKey = cache.staleKey()
LRUCache.prototype.popStale()

Return the stalest data or null.

let staleDate = cache.popStale()
LRUCache.prototype.info()

Return info.

cache.info()

Keywords