《客戶端儲存技術》讀後感

葉糖糖發表於2017-08-12

《客戶端儲存技術》是一本介紹Web應用程式中關於客戶端儲存技術的書。

如果閱讀者有前端開發基礎,那麼將可以花少量的時間閱讀完本書。即便是萌新,也無須擔心,這本書的內容比較淺顯易懂。全書詳細的介紹了Cookie、LocalStorage、SessionStorage、IndexedDB、Web SQL和第三方類庫的知識。

在日常的專案開發中Web開發者會使用到書中的一些技術。這本書適合初、中級Web開發工程師及對前端儲存技術感興趣的小夥伴閱讀。

全書一共7個章節,第一章節言簡意賅的闡述了Web客戶端資料儲存的發展歷程及會遭遇的難題。

第二章主要是介紹Cookie的使用。作者對於Cookie的使用,有著自己獨到的見解,個人也非常認同。其實大部分開發者對於Cookie的使用還是比較謹慎的,畢竟“謹慎能捕千秋蟬,小心駛得萬年船。”在演示程式小節,推薦了一個關於Cookie操作的開源類庫用來簡化對Cookie的使用。

在不使用第三方類庫的場景下,操作儲存cookie演示如下:

//建立並儲存一個cookie值
document.cookie="userName='sugarYe'";

//儲存第二個cookie值
document.cookie="age=20";

瀏覽一下網頁,然後在瀏覽器中檢視cookie是否儲存成功,會得到如下結果:

cookie

通過以上的操作可以發現這樣的操作不是很便利,眾所周知cookie實質上儲存的是字串,那對於取值操作也是相當繁瑣。如果可以這樣操作cookie,你會不會開心一點。

//使用cookie儲存name、age、sex等資訊
docCookies.setItem("name","sugarYe");
docCookies.setItem("age",20);
docCookies.setItem("sex","boy");

//獲取cookie值
var age=docCookies.getItem("age");
console.log("age",age);

//刪除cookie值
docCookies.removeItem("age");

//檢查是否存在age
docCookies.hasItem("age");

//獲取全部keys
docCookies.keys();

這樣的操作真是逆天了,要是再配上加解密就完美了。

第三章介紹的是Web儲存,分為本地儲存會話儲存技術。不過兩者的API相同。主要操作如下:

//儲存一項資料
localStorage.setItem("something",1);
//根據key獲取一項資料
localStorage.getItem("something");
//刪除指定的資料
localStorage.removeItem("something");
//清空所有的資料資訊
localStorage.clear();

第四章介紹的是IndexedDB,相比前兩個章節的介紹的技術IndexedDB帶來的樂趣和麻煩一樣的多。也許這本身就是一種樂趣吧。因為程式碼比較多就不佔用篇幅介紹了,還是直接看書比較實際。

第五章介紹的是Web SQL,比較有意思的是這不是一個正式的規範。不過如果你對這個比較感興趣,還是可以看看一看,玩玩Web SQL

其實在讀完第五章的時候,感覺自己可能讀了一本假書→_→。這難道真的不是作者去參加某個論壇的技術分享?本著開卷有益的理念,繼續啃剩下的兩章內容。

第六章介紹的是第三方提供的一些簡化操作的類庫。使用Lockr可以簡化Web儲存操作;使用Dexie可以簡化IndexedDB操作;全能庫localForage,支援IndexedDBWeb SQL 和本地儲存操作。

第七章是介紹的是一個比較有趣的例子,不妨按照書中的程式碼敲一遍。

通讀完全書鞏固了以前學習到知識,知道了幾個不錯的類庫,算是有所收穫。當然也有所遺憾,就是沒有讀到有關Application Cache的黑科技。即便如此,《客戶端儲存技術》也是一本不錯的書。

關於客戶端儲存技術應該會有更好的解決方案,可以幫助Web開發者處理離線快取和資料同步的問題。

相關文章