分享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 相关文章推荐
javascript 异步页面查询实现代码(asp.net)
May 26 Javascript
node.js中的fs.fstatSync方法使用说明
Dec 15 Javascript
jquery实现动态操作select选中
Feb 11 Javascript
JavaScript数组对象赋值用法实例
Aug 04 Javascript
js操作XML文件的实现方法兼容IE与FireFox
Jun 25 Javascript
jquery实现网站列表切换效果的2种方法
Aug 12 Javascript
JavaScript中利用for循环遍历数组
Jan 15 Javascript
node.js与C语言 实现遍历文件夹下最大的文件,并输出路径,大小
Jan 20 Javascript
VUE2 前端实现 静态二级省市联动选择select的示例
Feb 09 Javascript
vue组件实现弹出框点击显示隐藏效果
Oct 26 Javascript
解决微信小程序中的滚动穿透问题
Sep 16 Javascript
环形加载进度条封装(Vue插件版和原生js版)
Dec 04 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中的正则表达式以及模式匹配
2013/06/19 PHP
PHP把小数转成整数3种方法
2014/06/30 PHP
PHP检测链接是否存在的代码实例分享
2016/05/06 PHP
PHP切割整数工具类似微信红包金额分配的思路详解
2019/09/18 PHP
asp.net和php的区别点总结
2019/10/10 PHP
Knockoutjs快速入门(经典)
2012/12/24 Javascript
浅析js中的浮点型运算问题
2014/01/06 Javascript
JS中类或对象的定义说明
2014/03/10 Javascript
php结合imgareaselect实现图片裁剪
2015/07/05 Javascript
深入理解Java线程编程中的阻塞队列容器
2015/12/07 Javascript
bootstrap-datetimepicker实现只显示到日期的方法
2016/11/25 Javascript
详解JavaScript中的属性和特性
2016/12/08 Javascript
JS检测是否可以访问公网服务器功能代码
2017/06/19 Javascript
js实现rem自动匹配计算font-size的示例
2017/11/18 Javascript
Vue 组件(component)教程之实现精美的日历方法示例
2018/01/08 Javascript
ES6 Array常用扩展的应用实例分析
2019/06/26 Javascript
Vue路由守卫之路由独享守卫
2019/09/25 Javascript
vue使用swiper.js重叠轮播组建样式
2019/11/14 Javascript
js获取本日、本周、本月的时间代码
2020/02/01 Javascript
Python 由字符串函数名得到对应的函数(实例讲解)
2017/08/10 Python
python中reload(module)的用法示例详解
2017/09/15 Python
Python叠加两幅栅格图像的实现方法
2019/07/05 Python
python web框架中实现原生分页
2019/09/08 Python
基于selenium及python实现下拉选项定位select
2020/07/22 Python
python两种获取剪贴板内容的方法
2020/11/06 Python
Python的信号库Blinker用法详解
2020/12/31 Python
html5使用Drag事件编辑器拖拽上传图片的示例代码
2017/08/22 HTML / CSS
伦敦新晋轻奢耳饰潮牌:Tada & Toy
2020/05/25 全球购物
Prototype中如何为一个元素添加一个方法
2014/12/08 面试题
设计总监岗位职责
2013/12/07 职场文书
实习生岗位职责
2014/04/12 职场文书
护士求职信
2014/07/05 职场文书
人民币使用说明书
2019/04/17 职场文书
教你用python实现一个无界面的小型图书管理系统
2021/05/21 Python
JavaScript实例 ODO List分析
2022/01/22 Javascript
使用refresh_token实现无感刷新页面
2022/04/26 Javascript