8個JavaScript庫可更好地處理本地存儲

image

我爲當前項目測試了一些本地存儲庫。想知道他們有什麼很棒的功能嗎?繼續閱讀。javascript

Local Storage Bridge

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

image

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/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

lscache

https://github.com/pamelafox/...異步

它與localStorage API相似。事實上,它是localStorage的一個封裝器,並使用HTML5模擬memcaches函數。在上面的文檔中發現更多的功能。

基本使用:

lscache.set(‘name’, ‘Amy’, 5); // 數據將在5分鐘後過時
lscache.get(‘name’);

Lockr

image

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

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

localForage

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
  }
});

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

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
});

你還知道其餘本地存儲庫嗎?爲何使用它?在下面的評論中讓我知道!

相關文章
相關標籤/搜索