分享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 相关文章推荐
js格式化时间小结
Nov 03 Javascript
JavaScript 学习笔记之变量及其作用域
Jan 14 Javascript
原生JS实现LOADING效果
Mar 16 Javascript
jQuery中的基本选择器用法学习教程
Apr 14 Javascript
微信小程序 弹框和模态框实现代码
Mar 10 Javascript
jQuery Plupload上传插件的使用
Apr 19 jQuery
javaScript实现滚动条事件详解
Mar 24 Javascript
Vue.js 中取得后台原生HTML字符串 原样显示问题的解决方法
Jun 10 Javascript
vue3.0 CLI - 1 - npm 安装与初始化的入门教程
Sep 14 Javascript
详解Puppeteer前端自动化测试实践
Feb 21 Javascript
利用vue重构有赞商城的思路以及总结整理
Feb 21 Javascript
js实现验证码干扰(静态)
Feb 22 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
php实现微信公众号无限群发
2015/10/11 PHP
WordPress中给文章添加自定义字段及后台编辑功能区域
2015/12/19 PHP
php 算法之实现相对路径的实例
2017/10/17 PHP
js捕获鼠标滚轮事件代码
2013/12/16 Javascript
深入理解JavaScript系列(25):设计模式之单例模式详解
2015/03/03 Javascript
对javascript继承的理解
2016/10/11 Javascript
JavaScript Canvas绘制圆形时钟效果
2020/08/20 Javascript
Vue.js做select下拉列表的实例(ul-li标签仿select标签)
2018/03/02 Javascript
详解小程序毫秒级倒计时(适用于拼团秒杀功能)
2019/05/05 Javascript
layUI实现三级导航菜单效果
2019/07/26 Javascript
TypeScript魔法堂之枚举的超实用手册
2020/10/29 Javascript
[10:21]DOTA2-DPC中国联赛 正赛 PSG.LGD vs Aster 选手采访
2021/03/11 DOTA
[06:07]DOTA2-DPC中国联赛 正赛 Ehome vs VG 选手采访
2021/03/11 DOTA
python中的格式化输出用法总结
2016/07/28 Python
简单谈谈Python中的元祖(Tuple)和字典(Dict)
2017/04/21 Python
Python SQLite3简介
2018/02/22 Python
Python多继承顺序实例分析
2018/05/26 Python
python3中zip()函数使用详解
2018/06/29 Python
PyQt5实现简易计算器
2020/05/30 Python
Python数据类型之String字符串实例详解
2019/05/08 Python
python自动发邮件总结及实例说明【推荐】
2019/05/31 Python
pycharm设置鼠标悬停查看方法设置
2019/07/29 Python
Python判断字符串是否为合法标示符操作
2020/09/03 Python
css3进阶之less实现星空动画的示例代码
2019/09/10 HTML / CSS
日本航空官方网站:JAL
2019/06/19 全球购物
车间班组长岗位职责
2013/11/13 职场文书
十佳大学生村官事迹
2014/01/09 职场文书
学校元旦晚会方案
2014/02/19 职场文书
银行青年文明号事迹材料
2014/05/31 职场文书
优秀家长自荐材料
2014/08/26 职场文书
个人融资协议书范本两则
2014/10/15 职场文书
鼋头渚导游词
2015/02/05 职场文书
社区元宵节活动总结
2015/02/06 职场文书
销售员岗位职责范本
2015/04/11 职场文书
2015年工程师工作总结
2015/04/30 职场文书
如何使用JavaScript策略模式校验表单
2021/04/29 Javascript