3月 08, 2024 Javascript
在 Web Development 上我們常常會儲存小量資料在 Client Side 上,有可能是使用者的使用習慣,或者對上一次動作遇原資料等等。

雖然 Browser 自帶的 `localstorage` API 已經好方便使用,因為再提升可用性,現在就介紹一個 library 用來管理 `localstorage` 的。

### store2

Github : https://github.com/nbubna/store

佢提供左簡單的方法來存取 `localstorage`,可以另你更加專心你 Business logic 的開法。

#### 簡單應用方法

我們可以通過 `store()` 來進行簡單的基本的應用

```js
// 設定 key value
store(key, data);

// 使用 key 讀取 value
store(key);

// 運用 transaction 來寫入 value 到 key
store(key, fn[, alt]);

// 一次過寫入多個 key value
store({key: data, key2: data2});

// 讀所 store 內的所有 key value
store();

// 一個一個咁讀出 key 及 value, 可以通過 `return false` 來停止
store((key, data) => { });

// 清除所有的資料
store(false);
```

#### 進階應用

如果要進行更多的功能,可以通過以下方式來達成。

```js
// 相等於 store(key, data)
store.set(key, data[, overwrite]);

// 相等於 store({key: data, key2: data})
store.setAll(data[, overwrite]);

// 相等於 store(key)
store.get(key[, alt]);

// 相等於 store()
store.getAll([fillObj]);

// 相等於 store(key, fn[, alt])
store.transact(key, fn[, alt]);

// 相等於 store(false)
store.clear();

// 檢查 store 內有沒有提升的 key 值
store.has(key);

// 清除 key 的值及回傳原有資料,如果沒有資料則回傳 alt
store.remove(key[, alt]);

// 相等於 store(fn)
store.each(fn[, fill]);

// 加入資料到 key
store.add(key, data[, replacer]);

// 回傳所有的 keys
store.keys([fillList]);

// 取得 key 的 lenght
store.size();

// 清除所有的 key
store.clearAll();
```
過去文章
2025 (9)
4 (5)
3 (1)
2 (3)
2024 (25)
11 (3)
10 (3)
9 (1)
3 (18)
2022 (6)
10 (1)
6 (2)
5 (1)
3 (1)
1 (1)
2021 (21)
11 (7)
7 (1)
6 (2)
5 (2)
4 (6)
3 (2)
2 (1)
2020 (92)
12 (1)
11 (2)
10 (4)
9 (10)
8 (5)
7 (1)
6 (3)
5 (1)
4 (4)
3 (25)
2 (7)
1 (29)
2019 (57)
12 (25)
11 (7)
9 (25)