分享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 相关文章推荐
超清晰的document对象详解
Feb 27 Javascript
jquery如何实现在加载完iframe的内容后再进行操作
Sep 10 Javascript
javascript Deferred和递归次数限制实例
Oct 21 Javascript
jQuery实现的仿select功能代码
Aug 19 Javascript
js鼠标点击按钮切换图片-图片自动切换-点击左右按钮切换特效代码
Sep 02 Javascript
深入浅析JavaScript中的作用域和上下文
Mar 26 Javascript
Ionic如何实现下拉刷新与上拉加载功能
Jun 03 Javascript
在vue中获取dom元素内容的方法
Jul 10 Javascript
JavaScript数组去重的多种方法(四种)
Sep 19 Javascript
微信小程序实现轨迹回放的示例代码
Dec 13 Javascript
基于Vue CSR的微前端实现方案实践
May 27 Javascript
react中的DOM操作实现
Jun 30 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合并discuz用户脚本的方法
2015/08/04 PHP
PHP获取二维数组中某一列的值集合
2015/12/25 PHP
ThinkPHP框架实现导出excel数据的方法示例【基于PHPExcel】
2018/05/12 PHP
JavaScript Cookie的读取和写入函数
2009/12/08 Javascript
理解JSON:3分钟课程
2011/10/28 Javascript
javaScript对文字按照拼音排序实现代码
2013/12/27 Javascript
javascript中的原型链深入理解
2014/02/24 Javascript
JavaScript实现当网页加载完成后执行指定函数的方法
2015/03/21 Javascript
JavaScript中的Function函数
2015/08/27 Javascript
ionic组件ion-tabs选项卡切换效果实例
2016/08/27 Javascript
JavaScript实现父子dom同时绑定两个点击事件,一个用捕获,一个用冒泡时执行顺序的方法
2017/03/30 Javascript
vue自定义filters过滤器
2018/04/26 Javascript
JS加密插件CryptoJS实现AES加密操作示例
2018/08/16 Javascript
详解如何解决vue开发请求数据跨域的问题(基于浏览器的配置解决)
2018/11/12 Javascript
jQuery选择器之基本选择器用法实例分析
2019/02/19 jQuery
解决vue组件中click事件失效的问题
2019/11/09 Javascript
[52:10]LGD vs Optic Supermajor小组赛D组胜者组决赛 BO3 第二场 6.3
2018/06/04 DOTA
跟老齐学Python之开始真正编程
2014/09/12 Python
Windows下安装Scrapy
2018/10/17 Python
Python 从一个文件中调用另一个文件的类方法
2019/01/10 Python
Pycharm 设置默认头的图文教程
2019/01/17 Python
Python中时间datetime的处理与转换用法总结
2019/02/18 Python
Python实现的微信红包提醒功能示例
2019/08/22 Python
python文件操作seek()偏移量,读取指正到指定位置操作
2020/07/05 Python
智能电子应届生求职信
2013/11/10 职场文书
领导的自我鉴定
2013/12/28 职场文书
英文自荐信常用句子
2014/03/26 职场文书
教师年度考核评语
2014/04/28 职场文书
研发工程师岗位职责
2014/04/28 职场文书
小学捐书活动总结
2014/07/05 职场文书
党的群众路线个人对照检查材料
2014/09/23 职场文书
党员组织生活会发言材料
2014/10/17 职场文书
商业门面租房协议书
2014/11/25 职场文书
关于的python五子棋的算法
2022/05/02 Python
vue postcss-px2rem 自适应布局
2022/05/15 Vue.js
SQL Server中搜索特定的对象
2022/05/25 SQL Server