lrucache

LRU Cache for node.js/browser.

Downloads in past

Stats

StarsIssuesVersionUpdatedCreatedSize
lrucache
1201.0.36 years ago9 years agoMinified + gzip package size for lrucache in KB

Readme

LRUCache
LRU Cache for node.js/browser.
!NPM versionnpm-imagenpm-url !Build Statustravis-imagetravis-url !Downloadsdownloads-imagedownloads-url
使用链表实现的 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()