var cache = new LocalCache("test_");
cache.set("key", {name: "Alice", age: 20}, 10); // 写缓存 "key",有效期 10 秒
var info = cache.get("key"); // 读缓存
cache.has("key"); // 缓存是否存在
cache.remove("key"); // 删除缓存
// 读缓存,若不存在则写入
cache.getOrSet("key", function() {
return 100;
}, 3600);
// 事件订阅:
// 对 key 进行 set, remove 操作时,派发订阅的事件
// 若处理函数返回 false, 将不执行操作
// 处理函数签名 function (type, key, value, expires) {}
// - type string 事件类型:"set", "remove"
// - key string 缓存key
// - value mixed 缓存值,仅当 type == "set" 时存在
// - expires int 缓存有效期,仅当 type == "set" 时存在
cache.subscribe(id, "key", function (type, key, value, expires){
})
// 取消事件订阅:
cache.unsubscribe(id, "key")
// 清理当前前缀下的所有缓存数据
// 删除所有 缓存前缀为 "test_" 的缓存数据
// 警告: 若有另一缓存对象,其缓存前缀为 "test_2_",也将被一并清理!
// 若未设置缓存前缀(缓存前缀为 ""),不执行任何操作,返回 false
cache.clear();