博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
Smarge——基于HTML5 localStorage的key-value缓存框架
阅读量:5787 次
发布时间:2019-06-18

本文共 1354 字,大约阅读时间需要 4 分钟。

hot3.png

缓存是任何一个Web程序都需要重视的内容。受到Redis的启发,我想到开发一个基于HTML5 localStorage的key-value缓存框架,做了一些尝试之后,便有了Smarge这样一个产物。

大家都知道,HTML5的localStorage没有超时的机制,也不能存储数组和对象等类型,更没有命名空间等思想。

这些问题,在Smarge中都得到了解决。

项目地址

说明:Smarge1.0.js是完整的源代码,以Apache Lisence发布,建议调试时使用;Smarge1.0.min.js是压缩后的代码,建议部署时使用。

存储字符串:

Smarge.set('name','crazymus'); //设置name的值为crazymus

存储数组:

Smarge.set('boys',['crazymus','tom','jim']); //设置boys的值为一个数组

存储对象:

//设置user的值为一个对象Smarge.set('user',{    name:'crazymus',    sex:'boy',    age:26,    data:[        {            id:1,            name:'Math'        }    ]});

取回数据:

Smarge.get('name'); //crazymusSmarge.get('boys');//['crazymus','tom','jim']Smarge.get('user');//{name:'crazymus',sex:'boy',age:26 ... }Smarge.get('girls');//undefined

取回的值可能为字符串、数组、对象,这取决于你存入的数据。如果不存在将返回undefined。

设置过期时间:

Smarge.set('name','crazymus',10); //有效期10秒... 5秒后Smarge.get('name'); // crazymus...10秒后Smarge.get('name'); // undefined

删除数据:

Smarge.set('name','');

选择数据库:

Smarge内置了0-16个数据库,实现了类似于命名空间的功能,因此,你可以在不同的数据库中存储同名的数据,而不会引起冲突。默认使用的是0号数据库

Smarge.use(1); //选择1号数据库Smarge.set('name','crazymus');Smarge.get('name'); // crazymusSmarge.use(0); //选择0号数据库Smarge.set('name','tom');Smarge.get('name'); // tomSmarge.use(1); //再次选择1号数据库Smarge.get('name'); // crazymus

删除一个数据库中所有数据:

Smarge.drop(1); //删除1号数据库中所有数据Smarge.get('name'); // undefined

转载于:https://my.oschina.net/crazymus/blog/490521

你可能感兴趣的文章
前端优化及相关要点总结
查看>>
struts2中form提交到action中的中文参数乱码问题解决办法(包括取中文路径)
查看>>
25 个精美的手机网站模板
查看>>
C#反射实例应用--------获取程序集信息和通过类名创建类实例
查看>>
VC中实现文字竖排的简单方法
查看>>
会话标识未更新
查看>>
阿里架构师:程序员必须掌握的几项核心技术能力
查看>>
程序员常用的六大技术博客类
查看>>
Iceworks 2.8.0 发布,自定义你的 React 模板
查看>>
胖哥学SpringMVC:请求方式转换过滤器配置
查看>>
Kotlin 更加优雅的 Builder - 理解 with
查看>>
前端日拱一卒D6——字符编码与浏览器解析
查看>>
深入理解浏览器的缓存机制
查看>>
微软向Linux社区开放60000多项专利:对开源微软是认真的
查看>>
Hoshin Kanri在丰田的应用
查看>>
又拍云沈志华:如何打造一款安全的App
查看>>
克服大数据集群的挑战
查看>>
PostgreSQL并发控制(MVCC, 事务,事务隔离级别)
查看>>
DM***的第二阶段OSPF
查看>>
20180702搭建青岛RAC记录
查看>>