Hello,大家好,我是 Sunday。
現在的面試總會遇到很多“奇葩”的問題,不過本著“存在即合理”的態度,從“深入JS”的角度來看,這些個性化的面試題還是挺有意思的。
所以,咱們今天就來看一個“奇葩”面試題:如何使用JS來計算LocalStorage的容量
本文為譯文:https://javascript.plainenglish.io/believe-it-or-not-interviewer-asks-me-to-calculate-localstorage-capacity-using-javascript-12928482e096
LocalStorage 是瀏覽器提供的一種本地會話存儲的方式,最大支持 5M 的存儲空間。
雖說它的存儲空間是有上限的,但是我相信很多同學都和我一樣,在日常開發中其實并沒有關注過這個問題。畢竟 5M 的默認存儲針對數據而言已經非常大了。
但是,如果你在面對一些足夠復雜的項目,涉及到大量的數據本地存儲且沒有使用 IndexDB 的前提下,那么關注 LocalStorage 存儲空間位置,就變得有意義了。
為了計算總容量,我們將使用 10KB 為單位,相當于 10240 字節。我們將不斷向 LocalStorage 添加 10KB 塊,直到它已滿并引發錯誤。此時,我們統計所有累積的數據,這就是總存儲量!
在 JavaScript 中,字符串使用 UTF-16 編碼存儲。這意味著每個字符通常占用 2 個字節的內存空間。但是,對于某些特殊字符(例如表情符號或某些不太常見的語言字符),它們可能最多使用 4 個字節。
"a".length // 1"
本文鏈接:http://www.tebozhan.com/showinfo-26-87677-0.html不管你信不信,面試官讓我使用 JS 計算 LocalStorage 的容量!
聲明:本網頁內容旨在傳播知識,若有侵權等問題請及時與本網聯系,我們將在第一時間刪除處理。郵件:2376512515@qq.com
上一篇: 系統整容紀:責任鏈設計模式的應用實戰