成人免费xxxxx在线视频软件_久久精品久久久_亚洲国产精品久久久_天天色天天色_亚洲人成一区_欧美一级欧美三级在线观看

90%的人封裝Storage時忽略了一個點!你們知道封裝的意義是啥嗎?

開發
本文就是想讓大家知道,封裝 Storage 的時候,類型猜測是一個最基本的功能,有這個功能,使用者更方便、更無腦地使用?。

二次封裝 Storage?

關于 Storage 的封裝問題,其實都是老生常談了,很多人都會在項目中去二次封裝 Storage,為了讓開發者能更加方便地去使用 localStore、sessionStorage。就比如下方,應該是很多人封裝的案例,就是封裝簡單的 讀取、寫入,或者有 刪除、清空:

我們為什么封裝?

要不我們回過頭來想一下,我們為什么要封裝?其實封裝無非就是為了兩個目的:

  • 更好地統一維護
  • 使用者更方便、更無腦地使用

但是我覺得在一個大項目中以及緊急的開發進度中,使用者更方便、更無腦地使用才是封裝的第一目的,所以想想剛剛的 LocalStorage 的封裝,真的能讓使用者更方便、更無腦地使用嗎?

我就舉個例子吧,我想存進去一個對象,我這么去存,可以嗎?

顯然是不行的,存進去的對象會被轉成字符串 [object Object]:

所以我必須這么去存和取值,利用 JSON.parse、JSON.stringify 去轉:

只有這么去做才能達到我的目的:

但是這樣不覺得很麻煩嗎?使用者更方便、更無腦地使用是封裝的第一目的,顯然這樣只會讓使用者徒增煩惱!!!

有的人就說了,可以把 JSON.parse、JSON.stringify 寫在 useLocalStorage 中,但是這個方案只是針對 Object 而已,但是數據類型其實有多種:number、string、object、set、map、date 等等,你直接寫在里面,不太合理,你得兼顧所有的數據類型才行!!

類型猜測邏輯

所以呢,你如果想要讓使用者更方便、更無腦地使用,我們可以封裝一套類型猜測邏輯。

首先我們必須準備一個函數,這個函數用來判斷數據類型:

但是光是判斷出類型還不夠啊,我們還必須給每一種類型,準備一套 讀取、存入 的策略:

最后只需要:

  • 判斷類型
  • 獲取類型對應的存取策略
  • 在存取的時候執行對應策略

我們現在可以來試試能不能達到目的:

顯然已經達到我們想要的效果:

小結

當然, Storage 的封裝不僅僅是類型猜測這么一個功能點!而且其實封裝還有很多兜底的情況我這里沒寫出來,本文就是想讓大家知道,封裝 Storage 的時候,類型猜測是一個最基本的功能,有這個功能,使用者更方便、更無腦地使用。

責任編輯:趙寧寧 來源: 前端之神
相關推薦

2015-10-23 09:34:16

2024-08-01 17:34:56

Promiseaxios請求

2020-08-07 16:18:38

JavaScriptC++Python

2022-09-16 11:41:17

Spring代碼

2021-03-15 08:02:43

線性結構PriorityQue

2018-06-05 09:13:47

2021-08-26 21:55:38

DPU架構數據

2018-07-11 15:54:23

趨勢互聯網投資

2015-04-23 16:21:23

2023-08-31 12:01:14

數據分析體系

2015-09-21 14:22:43

2025-05-07 00:25:00

芯片焊料PC

2020-03-12 08:28:09

文件Java開發

2020-08-24 13:15:59

Python代碼描述符

2020-08-24 15:25:27

Python 開發運維

2022-07-20 09:06:27

Hook封裝工具庫

2022-06-27 08:00:49

hook工具庫函數

2022-05-09 10:47:08

登錄SpringSecurity

2025-04-16 07:06:43

2021-07-27 14:50:15

axiosHTTP前端
點贊
收藏

51CTO技術棧公眾號

主站蜘蛛池模板: 第一区在线观看免费国语入口 | 国产成人精品av | 高清一区二区 | 免费v片 | 韩日精品一区 | 日本视频中文字幕 | 欧美激情在线观看一区二区三区 | 久久国 | 成人免费网站在线 | 中文字幕1区2区 | 亚洲欧美日韩高清 | 美日韩免费 | 青青草一区二区三区 | 黑人久久 | 欧美综合一区二区 | 国产一区二区三区免费观看在线 | 丁香婷婷综合激情五月色 | 91精品国产91久久久久久最新 | 一区二区三区四区电影视频在线观看 | 久久久久国产一级毛片高清网站 | 国产精品96久久久久久 | 中文字幕亚洲视频 | 精品96久久久久久中文字幕无 | 高清成人av| 国产一区二区视频在线 | 亚洲一区二区高清 | 久久免费精品视频 | 日韩在线中文 | 欧美日韩成人影院 | 电影在线 | 中文字幕一区在线 | 在线观看av网站 | 蜜桃特黄a∨片免费观看 | 91极品尤物在线播放国产 | 狠狠躁夜夜躁人人爽天天高潮 | 91欧美激情一区二区三区成人 | 亚洲三级国产 | 成人一区二区三区在线 | 日韩一区二区在线看 | 国产精品免费一区二区三区四区 | 日本三级电影在线观看视频 |