分享8个JavaScript库可更好地处理本地存储


Posted in Javascript onOctober 12, 2020

我为当前项目测试了一些本地存储库。想知道他们有什么很棒的功能吗?继续阅读。

Local Storage Bridge

https://github.com/krasimir/lsbridge

如果你必须在同一个浏览器中从一个标签页发送消息到另一个标签页,你不必用艰难的方式。Local storage bridge在这里让任务变得更简单。

基本使用:

// 发送
lsbridge.send(‘app.message.error', { error: ‘Out of memory' });

// 监听
lsbridge.subscribe(‘app.message.error', function(data) {
 console.log(data); // { error: ‘Out of memory' }
});

Basil.js

分享8个JavaScript库可更好地处理本地存储

Basil.js统一了session、localStorage和cookie,为你提供了一种处理数据的直接方法。

基本使用:

let basil = new Basil(options);

basil.set(‘name', ‘Amy');
basil.get(‘name');
basil.remove(‘name');
basil.reset();

store.js

https://github.com/krasimir/lsbridge

Store.js像其他东西一样处理数据存储。但还有更多的功能,它的一个高级特性是让你更深入地访问浏览器支持。

基本使用:

store.set(‘book', { title: ‘JavaScript' }); // Store a book
store.get(‘book'); // Get stored book
store.remove(‘book'); // Remove stored book
store.clearAll(); // Clear all keys

lscache

https://github.com/pamelafox/lscache

它与localStorage API类似。事实上,它是localStorage的一个封装器,并使用HTML5模拟memcaches函数。在上面的文档中发现更多的功能。

基本使用:

lscache.set(‘name', ‘Amy', 5); // 数据将在5分钟后过期
lscache.get(‘name');

Lockr

分享8个JavaScript库可更好地处理本地存储

Lockr建立在localStorage API之上。它提供了一些有用的方法来更轻松地处理本地数据。

是什么让你要使用此库而不是localStorage API?

好吧,localStorage API仅允许你存储字符串。如果要存储数字,则需要先将该数字转换为字符串。在Lockr中不会发生这种情况,因为Lockr允许你存储更多的数据类型甚至对象。

基本使用:

Lockr.set(‘name', ‘Amy');
Lockr.set(‘age', 28);
Lockr.set(‘books', [{title: ‘JavaScript', price: 11.0}, {title: ‘Python', price: 9.0}]);

Barn

github.com/arokor/barn

Barn在localStorage之上提供了一个类似Redis的API。如果持久性很重要,那么你将需要这个库来保持数据状态,以防发生错误。

基本使用:

let barn = new Barn(localStorage);

// 原始类型
barn.set(‘name', ‘Amy');
let name = barn.get(‘name'); // Amy

// List
barn.lpush(‘names', ‘Amy');
barn.lpush(‘names', ‘James');
let name1 = barn.rpop(‘names'); // Amy
let name2 = barn.rpop(‘names'); // James

localForage

https://github.com/localForage/localForage

这个简单而快速的库将通过IndexedDB或WebSQL使用异步存储来改善Web的脱机体验。它类似于localStorage,但具有回调功能。

基本使用:

localforage.setItem(‘name', ‘Amy', function(error, value) {
 // Do something
});

localforage.getItem(‘name', function(error, value) {
 if (error) {
  console.log(‘an error occurs');
 } else {
  // Do something with the value
 }
});

很神奇的是它提供中文文档

crypt.io

https://github.com/jas-/crypt.io

crypt.io使用标准JavaScript加密库实现安全的浏览器存储。使用crypto.io时,有三个存储选项:sessionStorage,localStorage或cookie。

基本使用:

let storage = crypto;
let book = { title: ‘JavaScript', price: 13 };

storage.set(‘book', book, function(error, results) {
 if (error) {
  throw error;
 }
 
 // Do something
});

storage.get(‘book', function(error, results) {
 if (error) {
  throw error;
 }
 // Do something
});

你还知道其他本地存储库吗?为什么使用它?

到此这篇关于分享8个JavaScript库可更好地处理本地存储 的文章就介绍到这了,更多相关JavaScript 本地存储库内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木! 

Javascript 相关文章推荐
jQuery UI 应用不同Theme的办法
Sep 12 Javascript
在vs2010中调试javascript代码方法
Feb 11 Javascript
jqPlot 图表中文API使用文档及源码和在线示例
Feb 07 Javascript
js拦截alert对话框另类应用
Jan 16 Javascript
flash调用js中的方法,让js传递变量给flash的办法及思路
Aug 07 Javascript
js判断ie版本号的简单实现代码
Mar 05 Javascript
js触发onchange事件的方法说明
Mar 08 Javascript
微信小程序 参数传递实例代码
Mar 20 Javascript
JS实现带导航城市列表以及输入搜索功能
Jan 04 Javascript
vue.js实现插入数值与表达式的方法分析
Jul 06 Javascript
js canvas实现橡皮擦效果
Dec 20 Javascript
Vue.js组件实现选项卡以及切换特效
Jul 24 Javascript
浅析我对JS延迟异步脚本的思考
Oct 12 #Javascript
Webpack5正式发布,有哪些新特性
Oct 12 #Javascript
如何利用 JS 脚本实现网页全自动秒杀抢购功能
Oct 12 #Javascript
移动端JS实现拖拽两种方法解析
Oct 12 #Javascript
JavaScript读取本地文件常用方法流程解析
Oct 12 #Javascript
vue实现移动端返回顶部
Oct 12 #Javascript
用JavaScript实现贪吃蛇游戏
Oct 23 #Javascript
You might like
ThinkPHP单字母函数(快捷方法)使用总结
2014/07/23 PHP
ThinkPHP实例化模型的四种方法概述
2014/08/22 PHP
php编写的抽奖程序中奖概率算法
2015/05/14 PHP
PHP获取php,mysql,apche的版本信息及更多服务器信息
2021/03/09 PHP
javascript实现的鼠标链接提示效果生成器代码
2007/06/28 Javascript
javascript获取当前ip的代码
2009/05/10 Javascript
window.location.hash 使用说明
2010/11/08 Javascript
jquery动态添加删除div 具体实现
2013/07/20 Javascript
jQuery实现级联菜单效果(仿淘宝首页菜单动画)
2014/04/10 Javascript
Google Maps API地图应用示例分享
2014/10/23 Javascript
兼容主流浏览器的JS复制内容到剪贴板
2014/12/12 Javascript
JavaScript设计模式之工厂模式和构造器模式
2015/02/11 Javascript
JavaScript生成带有缩进的表格代码
2016/06/15 Javascript
Vue.js中兄弟组件之间互相传值实例
2017/06/01 Javascript
JointJS流程图的绘制方法
2018/12/03 Javascript
自定义Vue组件打包、发布到npm及使用教程
2019/05/22 Javascript
Vue实现兄弟组件间的联动效果
2020/01/21 Javascript
[01:10:03]OG vs EG 2018国际邀请赛淘汰赛BO3 第三场 8.23
2018/08/24 DOTA
Python实现115网盘自动下载的方法
2014/09/30 Python
Python实现判断并移除列表指定位置元素的方法
2018/04/13 Python
python使用opencv驱动摄像头的方法
2018/08/03 Python
详解python多线程之间的同步(一)
2019/04/03 Python
Python 离线工作环境搭建的方法步骤
2019/07/29 Python
python中如何使用insert函数
2020/01/09 Python
html5菜单折纸效果
2014/04/22 HTML / CSS
Betsey Johnson官网:妖娆可爱的连衣裙及鞋子、手袋和配件
2016/12/30 全球购物
荣耀俄罗斯官网:HONOR俄罗斯
2020/10/31 全球购物
迪卡侬波兰体育用品商店:Decathlon波兰
2020/03/31 全球购物
德国W家官网,可直邮中国的母婴商城:Windeln.de
2021/03/03 全球购物
英文求职信结束语大全
2013/10/26 职场文书
船舶专业个人求职信范文
2014/01/02 职场文书
汽车专业大学生职业生涯规划范文
2014/01/07 职场文书
股东出资证明书(正规版)
2014/09/24 职场文书
python实现自定义日志的具体方法
2021/05/28 Python
python3中apply函数和lambda函数的使用详解
2022/02/28 Python
Ubuntu安装Mysql+启用远程连接的完整过程
2022/06/21 Servers