ttl

1.3.1 • Public • Published

ttl Build Status

Simple in-memory cache for JavaScript

Installation

$ npm install ttl --save

Usage

var Cache = require('ttl');
var cache = new Cache({
    ttl: 10 * 1000,
    capacity: 3
});
 
cache.on('put', function(key, val, ttl) { });
cache.on('del', function(key, val) { });
cache.on('drop', function(key, val, ttl) { });
cache.on('hit', function(key, val) { });
cache.on('miss', function(key) { });
 
cache.put('foo', 'bar');
cache.put('ping', 'pong', 20 * 1000);
cache.put('yo', 'yo', 30 * 1000);
cache.put('whats', 'up'); // emit 'drop' event
 
cache.get('foo');     // > 'bar'
cache.get('yo');      // > 'yo'
cache.get('ping');    // > 'pong'
cache.get('lol');     // > undefined
 
// after 10 seconds
cache.get('foo');     // > undefined
cache.size();         // > 2
cache.del('ping')     // > 'pong'
cache.get('ping');    // > undefined
cache.size();         // > 1
cache.clear();
cache.size();         // > 0

License

MIT

Package Sidebar

Install

npm i ttl

Weekly Downloads

36,616

Version

1.3.1

License

MIT

Last publish

Collaborators

  • mrhooray