我为当前项目测试了一些本地存储库。想知道他们有什么很棒的功能吗?继续阅读。javascript
https://github.com/krasimir/l...java
若是你必须在同一个浏览器中从一个标签页发送消息到另外一个标签页,你没必要用艰难的方式。Local storage bridge在这里让任务变得更简单。git
基本使用:github
// 发送 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统一了session、localStorage和cookie,为你提供了一种处理数据的直接方法。浏览器
基本使用:安全
let basil = new Basil(options); basil.set(‘name’, ‘Amy’); basil.get(‘name’); basil.remove(‘name’); basil.reset();
https://github.com/marcuswest...cookie
Store.js像其余东西同样处理数据存储。但还有更多的功能,它的一个高级特性是让你更深刻地访问浏览器支持。session
基本使用:app
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
https://github.com/pamelafox/...异步
它与localStorage API相似。事实上,它是localStorage的一个封装器,并使用HTML5模拟memcaches函数。在上面的文档中发现更多的功能。
基本使用:
lscache.set(‘name’, ‘Amy’, 5); // 数据将在5分钟后过时 lscache.get(‘name’);
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}]);
https://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
https://github.com/localForag...
这个简单而快速的库将经过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 } });
很神奇的是它提供中文文档
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 });
你还知道其余本地存储库吗?为何使用它?在下面的评论中让我知道!